设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 1568|回复: 5
打印 上一主题 下一主题

[求助]友元函数重载运算符

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-3 02:28:15 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
重载运算符函数中,那些运算符重载只能是成员函数啊?哪些可以是友元的?这有限制吗?请高手指教
6#
发表于 2009-11-5 18:05:09 | 只看该作者
让人半夜上厕所都要打开电脑再看一遍的好帖
回复 支持 反对

使用道具 举报

5#
发表于 2009-11-3 02:28:18 | 只看该作者
# ## :: . .* ?: sizeof static_cast dynamic_cast const_cast reinterpert_cast typeid 操作符不能重载

= () [] -> 必须用成员函数重载

所有的一元运算符 建议使用 成员函数
+= -= *= /= ^= &= |= %= >>= <<= 建议使用 成员函数
所有其他二元运算符 建议使用 非成员函数

Rob Murray <<C++ Strategies & Tactics>>(Addison-Wesley),1993,第47页
回复 支持 反对

使用道具 举报

4#
发表于 2009-11-3 02:28:17 | 只看该作者
一般单目运算符用成员函数 系统用的时候自动调用THIS指针(参数个数比原参数个数少一个) 由定义的对象隐含的调用该函数
双目运算一般用友元函数定义比较习惯而且顺眼(原来参数与现在参数个数相等),另外后最单目运算符 作为成员函数时 原来参数与现在参数的个数也相等
我说的比较笼统 希望大家谅解
回复 支持 反对

使用道具 举报

3#
发表于 2009-11-3 02:28:16 | 只看该作者
错了,你看看另外一个帖子,说是有限制的。而且我用友元重载=号,总编译不过去
回复 支持 反对

使用道具 举报

2#
发表于 2009-11-3 02:28:15 | 只看该作者
没有限制的 ,看你怎么用了
有缘限制和成员函数的展开方式不同,对你的需求也不同
个人比较偏好友 元看着比较清楚
回复 支持 反对

使用道具 举报

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

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 13:17 , Processed in 0.094888 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

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