找回密码
 注册
搜索
热搜: 回贴
  • 前程无忧官网首页 有什么好的平台可以
  • 最新的销售平台 互联网营销的平台有哪
  • 制作网页的基本流程 网页制作和网页设
  • 【帝国CMS】输出带序号的列表(数字排
  • 网站建设公司 三一,中联,极东泵车的
  • 织梦 建站 织梦网站模版后台怎么更改
  • 云服务官网 哪些网站有免费的简历模板
  • 如何建网站要什么条件 建网站要用什么
  • 吉林市移动公司电话 吉林省退休人员网
  • 设计类毕业论文 网站设计与实现毕业论
查看: 1988|回复: 9

关于运算符的重载问题

[复制链接]
发表于 2009-11-3 04:18:18 | 显示全部楼层 |阅读模式 IP:江苏扬州
class Set
{
public:
friend Set operator +(const Set&);
int array[10];
}
请问我在这里friend Set operator +(const Set&);为什么不用friend就错呢?而且(const Set&);这里面非要用const呢?不用就报错呢?
发表于 2009-11-3 04:18:18 | 显示全部楼层 IP:江苏扬州
这个是什么???
你要是firend就要2个参数
这样的不用
没人说非要const
但你用const可以+常数
回复

使用道具 举报

发表于 2009-11-3 04:18:19 | 显示全部楼层 IP:江苏扬州
是没人说非要用const,但是我要是不用的话,编译器就说我这个运算符重载函数是暧昧的?
我就不明白这是为什么?
还有friend也是一样的,不加就说是暧昧的。
书上说:加了friend,可以直接访问私有的,但是这里,如果把数组设为私有的话,在main()函数里访问的话就报错啊!
回复

使用道具 举报

发表于 2009-11-3 04:18:21 | 显示全部楼层 IP:江苏扬州
全帖出来
回复

使用道具 举报

发表于 2009-11-3 04:18:22 | 显示全部楼层 IP:江苏扬州
走了
你发上来
会有人帮你的
回复

使用道具 举报

发表于 2009-11-3 04:18:22 | 显示全部楼层 IP:江苏扬州
class Set
{
public:
friend Set operator +(const Set&);
int array[10];
}
Set operator +(const Set& s)
{
//code
}
main()
{
Set s1,s2,s3;
s1=s2+s3;
}
回复

使用道具 举报

发表于 2009-11-3 04:18:23 | 显示全部楼层 IP:江苏扬州
程序代码:
friend Set operator +(const Set&);

友员函数 怎么就1个参数?
回复

使用道具 举报

发表于 2009-11-3 04:18:24 | 显示全部楼层 IP:江苏扬州
如果要用友员重载二元预算符号 应该是这样的格式...

class Set
{
public:
friend Set operator +(const Set&,const Set&);
int array[10];
};
Set operator +(const Set& s1,const Set& s2)
{
//code
}
main()
{
Set s1,s2,s3;
s1=s2+s3;
}
回复

使用道具 举报

发表于 2009-11-3 04:18:25 | 显示全部楼层 IP:江苏扬州
楼上的完全正确阿
回复

使用道具 举报

发表于 2009-11-3 04:18:26 | 显示全部楼层 IP:江苏扬州
我想请问一下,书上说,friend可以访问私有的变量,我把int array[10];
设为私有的,为什么会编译通不过呢?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-30 17:37 , Processed in 0.129417 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表