These and many other pitfalls are all discussed in detail in the C++ FQA Lite:
http://yosefk.com/c++fqa/exceptions.html#fqa-17.1
http://yosefk.com/c++fqa/ctors.html#fqa-10.17
http://yosefk.com/c++fqa/exceptions.html#fqa-17.3
The FQA helped my crystallize a lot of the reasons I hated C++. Even if you like C++, it's a good idea to understand the FQA's arguments, for the same reason people play devil's advocate.