c++重载和重写的区别是什么(c++ 运算符重载)

重载

一定是同一个作用域下。

两函数的函数名相同,但是参数不能完全相同,可以是参数类型不同,也可以是参数个数不同,至于返回值,不影响。

重载例子

void Test(int x, int y){ std::cout << "Test int, int" << std::endl;}void Test(int x, double y) { std::cout << "Test int, double" << std::endl;}int main(void) { Test(1, 2); Test(1, 1.1); return 0;}

重定义和重写

发生在两个不同的类中,一个是父类,一个是子类。

重定义分两种,一种是普通函数重定义,另一种是虚函数重写。

普通函数重定义:如果父类的普通成员函数被子类重写,就是重定义。

虚函数重写:如果父类的虚函数被子类重写,就是虚函数重写,这个函数就会发生多态。

派优网部分新闻资讯、展示的图片素材等内容均为用户自发上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习交流。用户通过本站上传、发布任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们一经核实,立即删除。并对发布账号进行封禁。

(0)
腻歪的爱的头像腻歪的爱

相关推荐

返回顶部