输入,输出符重载问题

hitzheng 2009-03-01 06:20:53
<<和>>的重载总是不对,用书上例子的源代码也不对,用友元的方式实现,但是总是提示不能在重载函数中访问私有变量.各位能否帮忙解决一下.
...全文
85 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sayigood 2009-03-01
  • 打赏
  • 举报
回复
跟编译器有关,我也遇到了同样的问题:
看我这个帖子就知道了
http://topic.csdn.net/u/20090228/20/1e409add-29ef-4307-a61d-bbd8cab78c85.html
jakqigle 2009-03-01
  • 打赏
  • 举报
回复
改成在public中声明重载函数为友元应该可以了吧。
jakqigle 2009-03-01
  • 打赏
  • 举报
回复

class mm{
//默认是private的
int data;
public:
friend ostream& operator <<(ostream& os,mm& m);
......
};

ostream& operator <<(ostream& os,mm& m){
os << m.data;
return os;
}

sagegz 2009-03-01
  • 打赏
  • 举报
回复
珍爱生命,远离VC6.0!
mujiok2003 2009-03-01
  • 打赏
  • 举报
回复
你写的代码有问题呗,应该和编译器关系不大。vc 6 对c++标准支持不是很好,但是还至于这样。你的问题帖上来吧。
  • 打赏
  • 举报
回复
VC6的问题,友元支持不够,换用VS吧。
或者把友元的定义放在类内部实现。
muyejingfeng100 2009-03-01
  • 打赏
  • 举报
回复
你用的是VC++6.0的吧。
在6.0中不支持重载输入、输出的的。换个新的版本吧。
新版本支持……

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧