override 仅能用于虚函数,他属于C++新特性,是重写覆盖的意思,他的存在仅仅是为了提高代码的可阅读性:
作用:
1. 提示程序的阅读者,这个函数是重写父类的功能。
2. 防止程序员在重写父类的函数时,把函数名写错。
如下代码:
1 #include <iostream> 2 3 using namespace std; 4 5 class Class_1 6 { 7 virtual void func() 8 { 9 cout << "AAA" << endl; 10 } 11 12 }; 13 14 class Class_2 :public Class_1 15 { 16 void func() override //方法后加 override,可以方便程序员阅读代码,知道这方法是重写的,不用回去找 17 { 18 cout << "BBB" << endl; 19 } 20 };
再比如:
1 #include <iostream> 2 3 using namespace std; 4 5 class Class_1 6 { 7 virtual void func() 8 { 9 cout << "AAA" << endl; 10 } 11 12 }; 13 14 class Class_2 :public Class_1 15 { 16 void func_1() override //方法后加 override,如果重写的方法名称写错,书写警告:C++ 使用“override”声明的成员函数不能重写基类成员 17 { 18 cout << "BBB" << endl; 19 } 20 };
注意:在方法声明后加 override 修饰便可,不需在方法实现的后方增加。
==========================================================================================================================
来源:https://www.cnblogs.com/CooCoChoco/p/12596239.html