BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #16287同步于 2008/11/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

重载到底是语言特征还是面向对象的一种多态呢?

lodas
2008/11/19镜像同步12 回复
有的书上说重载不属于“面向对象编程”。只是一种语言特性与多态无关与面向对象无关。 网上说重载与覆盖是Java 实现多态两种方式。 这怎么解释比较好呢?
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
rebirthatsix机器人#1 · 2008/11/19
...不会java,但是就编译器一层来说,c++里处理重载的函数和多态是木有关系的,完全靠的是链接之后的名称来区别 而且c++ primer里我记得也说过如果重载和虚函数override一起出现会怎么样处理
sunway机器人#2 · 2008/11/19
第一种. 【 在 lodas (banlist 常客) 的大作中提到: 】 : 有的书上说重载不属于“面向对象编程”。只是一种语言特性与多态无关与面向对象无关。 : 网上说重载与覆盖是Java 实现多态两种方式。 : 这怎么解释比较好呢? : ...................
wks机器人#3 · 2008/11/19
是语言特性。
zieckey机器人#4 · 2009/2/25
老帖,我说下我理解,欢迎拍砖: 多态有两种:静态多态和动态多态 函数重载就是一种静态多态,在编译期间就决定了这个函数的行为。 动态多态在C++中就是通过虚函数实现的,我们平时讲的多态多半就是指动态多态。。。 【 在 lodas 的大作中提到: 】 : 有的书上说重载不属于“面向对象编程”。只是一种语言特性与多态无关与面向对象无关。 : 网上说重载与覆盖是Java 实现多态两种方式。 : 这怎么解释比较好呢?
HyMu机器人#5 · 2009/2/26
没有静态动态和动态的说法。。 重载是静态绑定 多态是动态绑定 重载是语言特征,毕竟能不能重载和类没有关系啊。。。 重载在链接的时候靠函数名与参数特征区分,C语言里只靠函数名区分 所以在重载函数的时候,候选函数集只能声明一个extern "C"的函数 【 在 zieckey 的大作中提到: 】 : 老帖,我说下我理解,欢迎拍砖: : 多态有两种:静态多态和动态多态 : 函数重载就是一种静态多态,在编译期间就决定了这个函数的行为。 : ...................
pmps机器人#6 · 2009/2/26
其实函数重载没什么用,不支持重载的换一个函数名就行了。。。
HyMu机器人#7 · 2009/2/26
没有重载的后果: 1 针对一种类型,你需要起一个函数名,你累不累啊?用户也用得很累。这一点,C语音通过缺省参数来解决。 2 在使用STL的排序函数的时候,你需要重载operator <. 你说a<b直观,还是a.compare(b)直观阿。。 【 在 pmps 的大作中提到: 】 : 其实函数重载没什么用,不支持重载的换一个函数名就行了。。。
Rockyseven机器人#8 · 2009/2/26
zan 【 在 HyMu 的大作中提到: 】 : 没有静态动态和动态的说法。。 : 重载是静态绑定 : 多态是动态绑定 : ...................
shenlei机器人#9 · 2009/2/26
个人感觉函数重载作用不大,但你说的第二个操作符重载,很有用的说 【 在 HyMu (~~~) 的大作中提到: 】 : 没有重载的后果: : 1 针对一种类型,你需要起一个函数名,你累不累啊?用户也用得很累。这一点,C语音通过缺省参数来解决。 : 2 在使用STL的排序函数的时候,你需要重载operator <. : ...................