社区
C++ 语言
帖子详情
operator+() 一元加法操作符是干什么的?
Leaf_jo
2005-06-23 05:58:07
作数组与矩阵一章练习的时候总让我重载一元加法操作符。operator+();
一元加法操作符有什么用?难道像一元减法一样,都用0加一下?那不等于什么也没干?
...全文
499
13
打赏
收藏
operator+() 一元加法操作符是干什么的?
作数组与矩阵一章练习的时候总让我重载一元加法操作符。operator+(); 一元加法操作符有什么用?难道像一元减法一样,都用0加一下?那不等于什么也没干?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
代码之诗
2005-06-24
打赏
举报
回复
#include <iostream>
using namespace std;
class A {
public:
A(int i) : _i(i) { }
A& operator+() { return *this; }
friend ostream& operator << (ostream& os, A a) {
return os << a._i;
}
private:
int _i;
};
int main() {
cout << +A(100) << endl;
}
/*
一元+的重载很简单,至于它到底有什么用,要看你的算法中,一元+到底是什么意义。
通常来说,很少重载这个运算符,但对于特定的算法体系可能是有意义的(当然,对于C++来说,在对数字问题作范型编程时它与-的对称关系是十分有用的,这个少见,不说了)。通常我们忽略这个运算符是因为它“一般”是同一的、自反的、对称的、传递的,说白话就是它“一般”直接返回被运算数自身。但并非所有的类型都这样,C++没有这样要求,数学也没有这样要求。
假定有这样一个东东(扯远一点,物理学上的磁极就是这样的东东,它的正负极到目前为止不可分,所以它的数学模型应该可以出现+运算等同-运算的情况),它的一元+不满足同一性、自反性、对称性、传递性这四个中的一个或几个,它就会破坏“没有一元+”的世界,为了在这样一个运算体系内达到自谐,为所有的计算类加上一元+运算符即可,这样就能统一的对待所有的运算对象。
*/
ericqxg007
2005-06-23
打赏
举报
回复
对应的矩阵或数组元素相加咯
ericqxg007
2005-06-23
打赏
举报
回复
重载+运算符
wohow
2005-06-23
打赏
举报
回复
强烈顶fwinfwin(彩虹沙漠随风飘飘),看清人家问什么再回答
你昨天晚上在哪里吃饭?
我昨天晚上到D厅蹦的去了
cdo
2005-06-23
打赏
举报
回复
两个数组相加?那还是一元运数吗?
用来表示正负的说法似乎在理一些.
fwinfwin
2005-06-23
打赏
举报
回复
晕,也不看看别人说的是一元操作符
基本上这个只是和负号对应,可能这里好象没有什么意义
sea2000cn
2005-06-23
打赏
举报
回复
可以方便两个数组的运算操作,因为系统提供的操作符符中并不包含这个……
foochow
2005-06-23
打赏
举报
回复
重载操作符是另一种形式的C++多态.用它来对用户自定义的数据类型进行操作.使得代码更加简洁漂亮.在实际应用中,这样的例子就很多了.你可以自己去看看:P
jackytan_2008
2005-06-23
打赏
举报
回复
是用来方便运算的!!
例如:没有数组没有定义相加运算
重载后可以两个数组相加
如果没有定义重载就会报错
因为系统找不到与之对应的运算符
Leaf_jo
2005-06-23
打赏
举报
回复
Hotman_x(小人)说得听起来不错,可是这个函数怎么编写?
难道是{return *this;} ?
代码之诗
2005-06-23
打赏
举报
回复
一元加与一元减相对应,就是我们常说的正号和负号啦。对于数学运算来说,它们是构成完整自谐体系的必备部分。
MagicCarmack
2005-06-23
打赏
举报
回复
也就是两个数组或矩阵的元素分别相加
lsaturn
2005-06-23
打赏
举报
回复
服了楼上的跑题的人了......
你们考试肯定是个粗心的人
C++技巧之
operator
操作符
本文介绍了C++中的两种
operator
用法:
操作符
重载(
operator
overloading)和
操作符
隐式转换(
operator
casting)。通过示例展示了如何重载
加法
运算符和实现函数对象,以及如何进行不同类型间的隐式转换。
JavaScript
操作符
(
operator
)
本文详细介绍了JavaScript的各种
操作符
,包括
一元
操作符
中的递增递减,位
操作符
如按位非、按位与、按位或和位移,以及逻辑运算符和赋值
操作符
等。还讨论了
操作符
的优先级和特殊处理规则,如NaN、Infinity在运算中的行为,以及非数值类型的转换规则。
Koltin简明学习,
操作符
重载(
Operator
overloading)
本文介绍了Kotlin中的
操作符
重载功能,包括
一元
、二元
操作符
、数组类型
操作符
等,并通过实例展示了如何定义
操作符
行为。
通俗理解C++
operator
(重载
操作符
)
本文详细介绍了C++中的
操作符
重载概念,并通过一个具体的例子解释了如何使用
operator
关键字来实现用户自定义数据类型之间的运算。文章还展示了如何为自定义的类实现
加法
操作符
的重载。
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章