1)final类不能被继承。
2)final虚函数不能被重写。
class A { public: virtual void foo() {} }; class B: public A { public: void foo() final {} }; class C final: public B { public: void foo() {} // 不能重写B中的final虚函数 }; class D : public C // 不能继承final类C { };
1)final类不能被继承。
2)final虚函数不能被重写。
class A { public: virtual void foo() {} }; class B: public A { public: void foo() final {} }; class C final: public B { public: void foo() {} // 不能重写B中的final虚函数 }; class D : public C // 不能继承final类C { };