Accelerated C++第15章に対する疑問
p274の訳注*1に疑問あり。
- 仮想デストラクタをつけたとあるが、仮想になっていない
- 仮想だろうが、仮想でなかろうが、privateデストラクタなのでコンパイルできない
原文にあたれないけれど、
- 継承を使い、派生クラスのポインタをdeleteしているので、本来は仮想デストラクタが必要である
- それに訳者が気づき、仮想デストラクタを追加したが、virtual を忘れている
- ただし単にデストラクを記述したため、privateとなり、Ptrがdeleteするときにデストラクタを呼び出せず、コンパイルエラーとなった
というところではないだろうか。
でも BorlandC++ ではコンパイルエラーでませんね。これ。