Comment Re:Knowing when not to (Score 1) 345
What separates C++ beginners from those with 'intermediate' skills, or even masters?
Knowing when not to use templates, virtualization, [insert favorite c++ function here], etc.
Basically knowing enough about programming and problem solving with a particular language to tell a need from a want. Needing to use some language feature vs wanting to use some language feature. And being mature enough to stick to needs rather than indulge wants.
Or to state things differently
Think as a C programmer, (the kiss principal) and recast your solution into C++. Its not hard to convert structure manipulation into manipulation of an object. In effect, think simple, think about the next programmer who will be pulling his hair out trying to understand what the templates, castings, and obtuse code is doing.