Quote Originally Posted by matsp View Post
However, I think the constructor/destructor is not the commonly key point of performance - supposedly your object DOES something - and commonly that is where the key performance is. Of course, there are situations where creating & destroying the object is very much what you DO with the object, but it shouldn't be the norm.
In many cases, I agree. Probably even most cases. Maybe even 99.999% of the cases. However, once in a while those *tors are going to be called a heck of a lot more than you expect, such as in the case of a large array, or even STL's vector class, with its resize()s and push_back()s. Those cause an awful lot more *tor calls than many people would think, in which case you might want to be shaving off every last cycle you could from construction and destruction.