我对虚拟析构函数感到困惑。我已经阅读了很多问题和解释,但我仍然不明白如果基类有派生类,我是否需要实现自己的析构函数,即使它没有任何特殊操作。
编译器编译下面的代码,但会不会有内存泄漏或任何问题?
Class Base{
public:
virtual ~Base(){}
};
Class Derived : public Base{
// do i need a special destructor here for Derived ?
}
Base *foo;
foo = new Derived;
delete foo;