基本クラスがあり、そこから派生するクラスはほとんどありません。基本クラスにコピーコンストラクターを記述していません。デフォルトのコンストラクターを使用しています。
したがって、このコードを書くと、次のようになります。
base* b;
b = new base(*this)
正常に動作しますが、次のように記述した場合:
base* b;
b = new derive(*this)
派生クラスに一致する関数がない場合、エラーが発生します。
this
基本クラスのポインタを派生クラスのコピーコンストラクタに渡して初期化することはできませんか?