c++函数重载(overload)和覆盖(override)

重载(overload)

函数名相同,参数类型、数量、顺序、返回类型中有一个以上不同:

int add(int a, int b){return a + b;}
double add(double a, double b) {return a + b;} //重载add函数

覆盖(override)

这是类的虚函数相关的概念。基类中的虚函数被派生类重新定义,即为覆盖。基类和派生类中发生覆盖的虚函数返回类型、参数列表相同。

Class Base
{
public:
	virtual int foo(int i, int d)
	{
		return i + d;
	}
}

Class Derived : public Base
{
public:
	int foo(int i, int d) //覆盖
	{
		return i - d;
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_43762200/article/details/85262066