私は持っています
struct IMyInterface
{
virtual method1() = 0;
virtual method2() = 0;
};
GCCは私が持っていると主張します
struct IMyInterface
{
virtual method1() = 0;
virtual method2() = 0;
virtual ~IMyInterface(){};
};
理由がわかりません。純粋なインターフェースとは、インターフェースに関するものです(duh)。デストラクタは、インターフェイスの具体的な実装者の内部実装の詳細の一部です。インターフェイスの一部を形成することはありません。私はスライスの問題全体を理解しています(または少なくとも私は理解していると思います)
だから私の質問は-GCCはそれを主張する権利がありますか?もしそうなら、なぜですか?