via. http://www.kmonos.net/wlog/83.html#_1255080321 この件に関してはずっと誤解していたので、調べてみた。 昨日の#lowhacksで騒いでいた件のまとめ。 「C-torで例外を投げてはいけない」というのは、確かに迷信のようだ。 むしろ、Exceptional C++の著者Herb Sutter先生やC++ FAQ Liteでは「C-torの失敗」を伝える方法として積極的に使うよう推奨されている。 「C-torが例外を投げてはいけない」の迷信の根拠として、良く言われているのがC-torが失敗すると、D-torが呼ばれないので、リソースリークが起こる、ということだ。 これは正しくて、C-torが失敗した場合、その生成に失敗したクラスのD-torは呼ばれない。 ためしに以下のようなコードを実行すると、 #include <iostream> v