我有一个带有析构函数和继承者Base的类:virtualfinal Derived
class Base {
public:
virtual ~Base() {
// some impl
}
};
class Derived final : public Base {
public:
virtual ~Derived() override {
// some other impl
}
};
Run Code Online (Sandbox Code Playgroud)
我有以下问题:
~Derived需要virtual说明符?~Derived为吗final?~Derived()无论您是否应用关键字,都将是一个虚拟析构函数。那是因为基类析构函数是虚拟的。
~Derived()将是最终覆盖者,因为它是标记为 的类的成员final。final是否直接在析构函数上使用关键字并不重要。
| 归档时间: |
|
| 查看次数: |
120 次 |
| 最近记录: |