Предположим, мы имеем следующий код:Должен ли я явно объявлять деструктор как переопределение в производном классе?
class ISampleInterface
{
public:
virtual ~ISampleInterface() {} ;
virtual void Method1() = 0;
virtual void Method2() = 0;
};
class SampleClass : public ISampleInterface
{
public:
SampleClass() { };
~SampleClass() override { };
void Method1() { };
void Method2() { };
};
int main()
{
ISampleInterface *pObject = (ISampleInterface*)new SampleClass();
delete pObject;
return 0;
}
это лучше явно объявить ~ SampleClass(), как переопределение или не все равно?
P.S. Пожалуйста, сосредоточьтесь на переопределении и не заботитесь о реализации самого деструктора. Это можно определить, я просто приведу здесь пример, чтобы сделать мой вопрос ясным.
Спасибо за ваше мнение, но на самом деле это не ответ. – metal4people