struct Point2D {
float x;
float y;
};
Point2D operator+(Point2D lhs, Point2D rhs);
Point2D operator-(Point2D lhs, Point2D rhs);
Point2D operator*(Point2D lhs, Point2D rhs);
Point2D operator/(Point2D lhs, Point2D rhs);
此外,什么是'运营商'它的作用是什么?
答案 0 :(得分:-1)
它们被用作操作符的加载器功能的输入。左手侧与右手比较。
操作员重载函数改变了操作符的工作方式。
Point2D operator+(Point2D lhs, Point2D rhs);
上面的代码将lhs添加(因此+)到rhs。由于Point2D不是原始的数值数据类型,因此C ++不知道将它们中的两个加在一起。您需要告诉编译器应如何为Point2D数据类型执行+运算符。