I'm sorry, you have the right to your opinion, but I disagree, and so do
many of the people on the ISO standards committee for the language, as
do many people doing safety critical and mission critical work. While
the behavior of the compiler generated code is specified in the case of
a throw in a constructor, the problem is that the compiler has no way to
understand the user generated code in the destructor, and thus can take
incorrect action. Several software architecture standards codify
two-phase construction and destruction for precisely that reason.
Attachment:
OpenPGP_0x5B9DC79986207D69.asc
Description: application/pgp-keys
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature