相关疑难解决方法(0)

C++中的'override'关键字用于什么?

我是C++的初学者.我遇到override了我正在处理的头文件中使用的关键字.我可以知道,真正的用途是什么override,或许用一个例子就很容易理解.

c++ overriding c++11

184
推荐指数
3
解决办法
19万
查看次数

与c ++`override` /`final`说明符相反的是什么?

  • 在c ++ 11中,override说明符防止不覆盖预期的虚拟基本函数(因为签名不匹配).
  • final说明符在派生类中重写无意的功能保护.

=>是否有一个说明符(可能first或类似的东西no_override)可以防止覆盖未知的基本函数?

当虚拟函数被添加到基类中时,我想得到编译器错误,该基类具有与派生类中已有的虚函数相同的签名.


编辑4:为了使这个问题简单并且答案相关,这里又是

原始的伪代码

  • 摘要class B : Aprivate: virtual void fooHasBeenDone() = 0;
  • class C : B 器物 private: virtual void fooHasBeenDone() override { react(); }
  • 现在class A得到一个新的private: virtual void fooHasBeenDone();
  • 但新的A::foo可能与原始的不同B::foo.

和一个具体的例子

  • abstract class B : Avirtual void showPath() = 0;一个PainterPath
  • class C : B 器物 virtual void showPath() override …

c++ inheritance class-hierarchy modifiers c++11

8
推荐指数
1
解决办法
1395
查看次数