以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 C/C++编程思想 』  (http://bbs.xml.org.cn/list.asp?boardid=61)
----  OverLoading,Override,overload辨析[为该版原创,不得转载]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=25421)


--  作者:pennyliang
--  发布时间:12/14/2005 3:41:00 PM

--  OverLoading,Override,overload辨析[为该版原创,不得转载]
OverLoading[多载]
Override[过载]
Overload[重载]

OverLoad[多载]:Syntactic overloading[句法重载]
Override[过载]:Semantic overloading[语义重载]

通俗来说,OverLoad表示在卡车的横向overloading货物,Override表示在卡车的纵向overloading货物。

OverLoad的最通常用法是一个类的多种构造函数,他们共享了一个构造函数名称,只是在函数签名上有不同,第二个是操作符运算比如+,-,*,/.这类运算涉及多种类型,使用
Overloading可以在编译的这一级别上确定使用的具体函数签名{signature,也有翻译成型构,我习惯翻译成签名}

Override是语义级别的Overloading,在运行时识别,这是它最大的特点,根据运行的环境语义决定执行的那一个方法,这个需要语言提供继承的机制.

还有一个要提一下的概念是genericity,有翻译成泛型,也有翻译成类属,这个可以实现
带约束的overloading,也可以实现无约束的overloading,等同于一级继承,可以理解成override增加一个约束就是纵向最多放两层货品。


[此贴子已经被作者于2005-12-15 10:10:51编辑过]

--  作者:firstway
--  发布时间:12/14/2005 4:45:00 PM

--  
鼓励原创!
--  作者:enorm
--  发布时间:12/14/2005 4:46:00 PM

--  
留名,呆会看~~~~~~~
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
41.016ms