#includeusing namespace std; class Point { private: double x, y; public: Point(){x = 0, y = 0;} Point(double a, double b) : x(a), y(b) {} friend Point operator + (const Point &p1, const Point &p2) { return Point(p1.x + p2.x, p1.y + p2.y); } void print_data() { printf("%lf %lf", x, y); } }; int main() { Point p1(233, 233), p2(2.33, 2.33), p3; p3 = p1 + p2; p3.print_data(); return 0; }
注意使用友元函数重载运算符时,(相当于公用)定义时“(参数)”要写明每一个参数



