| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 325 人关注过本帖
标题:关于输入输出操作符的重载
只看楼主 加入收藏
未未来
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:182
专家分:157
注 册:2012-11-6
结帖率:94.87%
收藏
已结贴  问题点数:2 回复次数:2 
关于输入输出操作符的重载
以输出重载符号为例

程序代码:
ostream& operator<<(ostream& out,const Sales_item &s)
{
    out<<s.isbn<<................;
    return out;
    
}


有几个疑惑,
1. 为什么他有返回类型 而不是 void
2.它有两个形参,在使用时 cout<<item<<endl;

cout 和 item 分别作为第一第二个形参吗。
2013-05-06 18:06
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1487
专家分:9072
注 册:2010-3-16
收藏
得分:2 
1.可以连续输出,
cout << a << b << c;
2.第一个形参是输出流,第二个是输出内容。
2013-05-06 20:14
fxbszj
Rank: 5Rank: 5
来 自:阿修罗界
等 级:职业侠客
威 望:4
帖 子:163
专家分:331
注 册:2012-10-8
收藏
得分:0 
第一个问题,函数定义的是ostream类型,就必须得到一个这样一个结果,里面的return就是返回这个结果。返回void,这就好比车启动要的汽油,我给你加石头,车能正常运行吗?定义ostream类型,那你的返回值类型就必须是ostream
第二个问题,函数有两个形参ostream& out,const Sales_item &s,你在调用的这个函数的时候也要提供两个这样类型的实参operator(a,b),a和b就分别是ostream和Sales_item类型
2013-05-06 20:20
快速回复:关于输入输出操作符的重载
数据加载中...
 
   



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

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