operator+() 一元加法操作符是干什么的?

Leaf_jo 2005-06-23 05:58:07
作数组与矩阵一章练习的时候总让我重载一元加法操作符。operator+();
一元加法操作符有什么用?难道像一元减法一样,都用0加一下?那不等于什么也没干?
...全文
446 13 打赏 收藏 转发到动态 举报
写回复
用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
  • 打赏
  • 举报
回复
服了楼上的跑题的人了......
你们考试肯定是个粗心的人

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧