首页 > 代码库 > c++ 重载,覆盖,重定义
c++ 重载,覆盖,重定义
函数重载(Function Overloading)
C++允许同一范围(scope)(在同一个类中)内具有多个名称相同的函数。这些函数成为重载函数(overloaded function)。
C++ 使用函数声明的 参数数量,参数类型,省略号存在或缺失(Presence or absence of ellipsis),const 或 volatile 来区分同一范围内具有相同名称的函数组。
覆盖(override,重写):
子类重写定义基类中有相同名字相同参数的虚函数。
不同范围内(特指基类派生类)
函数名相同
参数相同
基类函数有virtual关键字修饰
virtual函数是private的,派生类中可重写为public 或者protected。
重定义(redefining,也叫隐藏):
派生类的函数屏蔽了与其同名的基类函数;
a、若派生类的函数与基类的函数名称相同,但参数类表不同,则基类函数被隐藏(不管基类函数有无virtual修饰);
b、若派生类的函数与基类的函数名称相同,参数列表相同,但基类函数无virtual修饰,则基类函数被隐藏。
http://msdn.microsoft.com/zh-cn/library/5dhe1hce.aspx
http://www.cnblogs.com/kevinGaoblog/archive/2012/08/25/2656989.html
http://blog.163.com/clevertanglei900@126/blog/static/111352259201102441934870/
c++ 重载,覆盖,重定义
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。