| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 310 人关注过本帖
标题:求助!
只看楼主 加入收藏
huyukunbianc
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-9-20
结帖率:100%
收藏
 问题点数:0 回复次数:4 
求助!
运算重载以后,调用cout.operator<<  必须加括号才能正常输出,而把operator去掉以后cout<<可以直接输出信息,这是为什么啊?
2012-09-30 22:56
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
没记错应该是  显式调用    隐式调用
2012-10-01 01:43
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
语法就是这样的。
按对象调用成员函数,就是函数调用了,得遵循函数调用的语法,也就是 obj.func(args) 这样的语法。这是通用的,什么成员函数都可以用这种方法调用,包括重载的运算符。
不过重载的运算符,可以使用运算符表达式调用。比如二两运算符 +,如果你写 a + b,那么会被编译器解释成 a.operator+ (b) 或者 operator+ (a, b) 这样的形式。只要你重载的正确,编译器就会正确地理解代码。可以把这个看成是重载运算符的特权。如果你不用,当然也可以用通用的方法来调用。
2012-10-01 10:00
huyukunbianc
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-9-20
收藏
得分:0 
回复 3楼 pangding
哦 谢谢大神~~
2012-10-01 19:28
huyukunbianc
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-9-20
收藏
得分:0 
回复 2楼 寒风中的细雨
谢谢大神~~~
2012-10-01 19:28
快速回复:求助!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016034 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved