#include using namespace std; class Point { private: int _x, _y; public: Point(int x, int y) : _x(x), _y(y) {} //前置 Point& operator++() { ++_x; ++_y; return *this; } //后置 Point operator++(int) { Point temp = *this; _x++; _y++; return temp; } Point& operator--() { --_x; --_y; return *this; } Point operator--(int) { Point temp = *this; _x--; _y--; return temp; } friend ostream& operator<<(ostream& os, const Point& p) { os << "(" << p._x << ", " << p._y << ")"; return os; } friend istream& operator>>(istream& is, Point& p) { is >>p._x >> p._y; return is; } }; int main() { Point p(1,2); cin >> p; cout << p << endl; Point p1 = p++; cout << p1 << endl; Point p2 = ++p; cout << p2 << endl; Point p3 = p--; cout << p3 << endl; Point p4 = --p; cout << p4 << endl; return 0; }