社区
C++ 语言
帖子详情
重载操作符与成员函数和非成员函数的关系
bendise
2008-02-19 04:12:07
看primer第4版讲到重载操作符的时候看着有点迷糊,谁能帮我解释下,什么样的重载操作符用在成员函数?而什么样的重载操作符用在非成员函数?
...全文
93
7
打赏
收藏
重载操作符与成员函数和非成员函数的关系
看primer第4版讲到重载操作符的时候看着有点迷糊,谁能帮我解释下,什么样的重载操作符用在成员函数?而什么样的重载操作符用在非成员函数?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xi_aowo_happy
2008-02-20
打赏
举报
回复
经验吧,4楼说的比较好。
白乔
2008-02-20
打赏
举报
回复
还有一种情况,a+b
a、b对象所属的类不是你写的
你只能用全局的操作符
taodm
2008-02-20
打赏
举报
回复
C++ Primer讲了原则的,再认真找找。
visame
2008-02-20
打赏
举报
回复
这个好像约定俗成的吧。一般+,+=,*,/这些都是member function
输入输出<<,>>一般都是friend,non-member的。
原则上所有运算符都可以当成非成员函数重载。
ttkk_2007
2008-02-19
打赏
举报
回复
对第一个操作数一定是对象,而且要返回运算结果的(+=/=/...),用成员函数
======================================================
谁说非要用成员函数
hai040
2008-02-19
打赏
举报
回复
第2条还有个条件,执行后,运算结果跟第一个操作数一样
hai040
2008-02-19
打赏
举报
回复
第一个操作数允许不是对象的(+-*/...),用非成员函数
对第一个操作数一定是对象,而且要返回运算结果的(+=/=/...),用成员函数
楼下补充
相关推荐
第十四章:
重载
操作符
与转换
1:一般将算术,
关系
操作符
定义为
非
成员函数
,而赋值操作定义为
成员函数
2:|| &&以及,3个
操作符
一般不
重载
,破坏其求值顺序; 3:= [] () –>
操作符
是必须为成员的 4:+= 等复合一般成员而
非
强制 5: ++ --等作为成员,而对称
操作符
为
非
成员,例如 + – / * == != >= <= | & ^ 等。 6:
重载
-&...
十四章 札记--C++ primer 之旅
重载
运算符:具有特殊名称的函数,operator +
操作符
符号 ,具有返回类型和形参表。注意:
重载
操作符
必须具有至少一个类类型或枚举类型的操作数。大多数
重载
操作符
可以定义为普通
非
成员函数
或类的
成员函数
。作为类成员的
重载
函数,形参比操作数数目少1,隐含的this 形参,限定为第一个操作数。规则:一般将算术和
关系
操作符
定义为
非
成员函数
,而将赋值
操作符
定义为成员
操作符
重载
和友元
关系
:
操作符
c++
操作符
重载
笔记
c++
操作符
重载
= [] () ->
操作符
必须为类
成员函数
复合赋值
操作符
(+= -= *= /=)通常定义为类的
成员函数
自增(++)、自减(–)和解引用(*),通常定义为类的
成员函数
算数
操作符
、相等
操作符
、
关系
操作符
和位
操作符
,最好定义为普通
非
成员函数
定义为
非
成员函数
输出
操作符
ostream& operator << (ostream& os, const ClassType &obj
【C++深度解析】20、
操作符
重载
文章目录1
重载
为
成员函数
2
重载
为
非
成员函数
3 小结 如果我们直接使用 “+” 完成复数的加法,要怎么做呢? 这就要使用
操作符
的
重载
功能了,
操作符
的
重载
是以函数的方式进行的。本质上是用特殊形式的函数扩展
操作符
的功能。
重载
通过 operator 关键字定义特殊的函数,可以
重载
为类的
成员函数
和
非
成员函数
。 1
重载
为
成员函数
语法: 将
操作符
重载
函数定义为类的
成员函数
时 比定义为
非
成员函数
少一...
操作符
重载
操作符
重载
重载
&&、||或逗号以及取地址
操作符
不是一种好的做法定义了+
操作符
,也应该定义+=和=
操作符
一般将算术和
关系
操作符
定义为
非
成员函数
而将赋值
操作符
定义为成员= [] ()和->等
操作符
必须定义为成员将这些如果定义为
非
成员函数
将在编译时标记为错误+=通常应定义为类的成员。但是不一定
非
得这么做,如果定义
非
成员复合赋值
操作符
不会出现编译错误自增、自减和&
操作符
通常定义为类成员算术
发帖
C++ 语言
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
6.3w+
社区成员
25.0w+
社区内容
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2008-02-19 04:12
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下