C++供给的关头字override和final可以用于多态的场景中,override的功能是标明子类实现的函数是重写了基类中的函数,final的功能是后续的子类不克不及重写标示为final的函数。本文将经由过程示例告诉你如何利用override和final以及它们的感化结果。
声明如下两个类,基类Base, 担当自基类Base的子类Derived, 而且子类的虚函数后面标示了override
如下图所示,子类中实现了父类没有的虚函数,并标示override
编译的过程中会报如下所示的错误,暗示只有虚当作员函数才能被标示override
若是在基类中的虚函数后面加上final, 暗示后续子类不克不及重写该函数
编译报错如下所示,暗示子类重写了一个基类标明为final的函数
可以在子类中的虚函数中同时标明是override和final,
最后也可以在子类中的虚函数零丁表白final,子类后续的子类都不克不及重写该函数
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!