当前位置:   article > 正文

override 关键字_虚函数用override修饰

虚函数用override修饰

很多时候我们都会在函数的末尾看到 override 关键字。override 可以用来检查当前修饰的虚函数是否成功重写父类的虚函数,也就是说,被override 修饰的虚函数必须要满足重写条件(虚函数 + 三同)。如果override修饰了子类的某个虚函数,存在两种情况会报错。

  • 基类不存在 override修饰的同名函数
  • 基类存在  override修饰的同名函数,但该同名函数不是虚函数
  1. // 场景一:基类不存在 override修饰的同名函数
  2. class Person
  3. {
  4. public:
  5. };
  6. class Student:public Person
  7. {
  8. public:
  9. virtual void BuyTicket() override {} // 报错
  10. };
  11. // 场景二:基类存在  override修饰的同名函数,但该同名函数不是虚函数
  12. class Person
  13. {
  14. public:
  15. void BuyTicket() {}
  16. };
  17. class Student:public Person
  18. {
  19. public:
  20. virtual void BuyTicket() override {} // 报错
  21. };

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/950677
推荐阅读
相关标签
  

闽ICP备14008679号