赞
踩
很多时候我们都会在函数的末尾看到 override 关键字。override 可以用来检查当前修饰的虚函数是否成功重写父类的虚函数,也就是说,被override 修饰的虚函数必须要满足重写条件(虚函数 + 三同)。如果override修饰了子类的某个虚函数,存在两种情况会报错。
- // 场景一:基类不存在 override修饰的同名函数
- class Person
- {
- public:
-
- };
-
- class Student:public Person
- {
- public:
- virtual void BuyTicket() override {} // 报错
- };
-
- // 场景二:基类存在 override修饰的同名函数,但该同名函数不是虚函数
- class Person
- {
- public:
- void BuyTicket() {}
- };
-
- class Student:public Person
- {
- public:
- virtual void BuyTicket() override {} // 报错
- };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。