インターフェースクラスのポインタをメンバに持つクラスを作ったのですが、
ポインタをデリートする際に型情報がわからないため正しくデリートできません。
Interface.h SubClass.h MyClass.h
#include"interface.h"
struct MyClass
{
IAho *p_i;
myClass(IAho* aho) : p_i(aho) { }
~MyClass()
{
//メモリリーク
//delete p_i;
//このクラスからはp_iがどんな型を継承しているかわからない?
//delete static_cast<?>(p_i);
}
}
MyClass側でIAhoのポインタをデリートする際に型がわからないのでデリートすることができません。
MyClassをテンプレートクラスにしてテンプレート引数にBakaを渡してそれをもとにデリートしようかと思ったのですが、少し頭の悪い方法のような気がします。
何かいい方法はないでしょうか?