[C++11]override关键字的使用

Posted Wecccccccc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[C++11]override关键字的使用相关的知识,希望对你有一定的参考价值。

override关键字确保在派生类中声明的重写函数与基类的虚函数有相同的签名,同时也明确表明将会重写基类的虚函数,这样就可以保证重写的虚函数的正确性,也提高了代码的可读性,和final一样,这个关键字要写到方法的后面。

1.有继承关系
2.子类重写父类虚函数
3.父类指针或引用指向子类对象

代码如下:

#include <iostream>
using namespace std;

class Base
{
public:
	virtual void test()
	{
		cout << "Base class..." << endl;
	}
};

class Child :public Base
{
public:
	void test() override	
	{
		cout << "Child class..." << endl;
	}
};

class GrandChild :public Child
{
public:
	void test() override
	{
		cout << "GrandChild class..." << endl;
	}
};

以上是关于[C++11]override关键字的使用的主要内容,如果未能解决你的问题,请参考以下文章

[C++11 类的改进] --- 继承控制:final和override

[C++11 类的改进] --- 继承控制:final和override

C++11 final和override

c++ default override delete关键字

为啥在 C++ 中覆盖是可选的?

inline内联函数