c++ - 当一个类中有虚函数时,隐式生成的析构函数是否也是虚函数?

标签 c++ destructor virtual-destructor

假设我们有一个类

class A
{
    virtual void f();
};

默认析构函数是虚拟的吗?

最佳答案

。析构函数始终是非虚拟的,除非您明确声明它是虚拟的,或者该类具有带有虚拟 析构函数的基类。

关于c++ - 当一个类中有虚函数时,隐式生成的析构函数是否也是虚函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36108566/

相关文章:

c++ - 不提供显式析构函数是不是不好的做法?

c++ - 如果基类析构函数是虚拟的,是否需要派生类析构函数定义?

c++ - 为什么这不是内存泄漏?或者是吗?删除没有虚拟析构函数的基类指针

c++ - 基类虚拟析构函数访问冲突

C++ 如何在类函数中构造一个对象,执行一些操作并返回值?

C++ 单元测试,模拟对象

c++ - 如何跟踪调用析构函数的位置 - C++

c++ - 是否有必要释放 shared_ptr?

c++ - 创建从现有派生的新异常

c++ - 跳过 C++ 全局析构函数