返回信息流友元函数与成员函数除了在继承上的区别外,还有什么区别?什么时候该用友元函数呢,他的好处是什么??在好多地方感觉用友元也可以,用成员函数也可以,例如:点类里求两个点的距离,实在感觉不出来有什么区别,请大家多指点指点,非常感谢!
这是一条镜像帖。来源:北邮人论坛 / cpp / #7185同步于 2008/5/21
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
求助(友元函数与成员函数)
hf85314
2008/5/21镜像同步8 回复
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
比如你新定义了一个类A,想要用重载运算符+来定义两个A类的加法,那么就只能用友元函数来实现了...
【 在 hf85314 (3521) 的大作中提到: 】
: 这个到是,可是如果只是这个作用的话,成员函数也可以办到啊,那还要友元函数作什么用呢?他的好处是什么
比如你新定义了一个类A,想要用重载运算符+来定义两个A类的加法,那么就只能用友元函数来实现了...
这个倒是,不过好像只对双目运算必须是友元,单目就可以是成员函数了。为什么会这样?
这个我还真没想到,谢谢了。嘿嘿
发信人: noname (无名亡者), 信区: CPP
标 题: Re: 求助(友元函数与成员函数)
发信站: 北邮人论坛 (Wed May 21 18:00:41 2008), 站内
如果有一个函数,你没有它的源代码。。只有它的定义,你怎么把它变成你的成员函数?
因为单目运算符 函数的有效参数实际上只有一个,自然可以是类的成员函数
【 在 hf85314 (3521) 的大作中提到: 】
: 比如你新定义了一个类A,想要用重载运算符+来定义两个A类的加法,那么就只能用友元函数来实现了...
: 这个倒是,不过好像只对双目运算必须是友元,单目就可以是成员函数了。为什么会这样?