我刚刚学习了运算符重载的基础知识。之后,我编写了以下代码,用于平面中两个点的矢量加法。
#include <bits/stdc++.h>
using namespace std;
struct point{
int x, y;
point operator+(point b){
point c;
c.x = x + b.x;
c.y = y + b.y;
return c;
}
};
int main()
{
point a, b, c;
a.x = 1, a.y = 2, b.x = 3, b.y = 4;
c = a + b;
cout<<c.x <<" "<< c.y;
return 0;
}
但是,我发现的大多数其他运算符重载示例的编码方式都非常不同,示例答案为to this question。即使我使用此方法获得了正确的输出,但是当我通过声明一个新变量或忽略 const
来执行此操作时,还是值得担心的吗?