在我的类层次结构中,有许多可以被覆盖的虚函数。例如,我的Window类有许多功能,不需要更改,但也不应该在将来被覆盖。所以我想在一些Window的函数中添加final关键字,但我不需要重新定义它们中的任何一个,因为它们已经像我想要的那样工作。
我目前只是在最终重新定义中调用基类函数,但我想知道是否有更好的方法来执行此操作,甚至不需要这样做。
示例代码:
class Control {
virtual void foo();
};
class Window : public Control {
void foo() final; // I don't want to have to define this because it does the same thing.
};
class AnotherControl : public Control {
void foo() override; // I do want to change what the function does with this control.
};