派生类覆盖了基类中的同名虚函数,如果基类中的对应虚函数声明修改,在编译是不会提示派生类有错误,而如果派生类的函数在声明的时候使用了override,那么编译时就会提示错误了。
例如:
1 class A 2 { 3 public: 4 virtual void VFun(); 5 }; 6 7 class B 8 : public A 9 { 10 public: 11 virtual void VFun() override; 12 };
当A::VFun()修改为virtual void VFun(int x)时,B就会编译不通过。