Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class Point {
- private:
- int x, y;
- public:
- Point() {}
- Point(int _x, int _y) {
- x = _x;
- y = _y;
- }
- Point operator + (Point p) {
- Point ret;
- ret.x = x + p.x;
- ret.y = y + p.y;
- return ret;
- }
- Point operator - (Point p) {
- Point ret;
- ret.x = x - p.x;
- ret.y = y - p.y;
- return ret;
- }
- Point operator * (Point p) {
- Point ret;
- ret.x = x * p.x;
- ret.y = y * p.y;
- return ret;
- }
- Point operator / (Point p) {
- Point ret;
- ret.x = x / p.x;
- ret.y = y / p.y;
- return ret;
- }
- bool operator < (Point p) {
- if(x < p.x and y < p.y) {
- return true;
- }
- return false;
- }
- bool operator > (Point p) {
- if(x > p.x and y > p.y) {
- return true;
- }
- return false;
- }
- bool operator <= (Point p) {
- if(x <= p.x and y <= p.y) {
- return true;
- }
- return false;
- }
- bool operator >= (Point p) {
- if(x >= p.x and y >= p.y) {
- return true;
- }
- return false;
- }
- bool operator == (Point p) {
- if(x == p.x and y == p.y) {
- return true;
- }
- return false;
- }
- bool operator != (Point p) {
- if(x == p.x and y == p.y) {
- return false;
- }
- return true;
- }
- Point& operator += (Point p) {
- x += p.x;
- y += p.y;
- return *this;
- }
- Point& operator -= (Point p) {
- x -= p.x;
- y -= p.y;
- return *this;
- }
- Point& operator *= (Point p) {
- x *= p.x;
- y *= p.y;
- return *this;
- }
- Point& operator /= (Point p) {
- x /= p.x;
- y /= p.y;
- return *this;
- }
- Point& operator = (const Point &p) {
- if(this != &p) {
- x = p.x;
- y = p.y;
- }
- return *this;
- }
- Point& operator ++ (int p) {
- x++;
- y++;
- return *this;
- }
- Point& operator -- (int p) {
- x--;
- y--;
- return *this;
- }
- void pecati() {
- cout << x << " " << y << endl;
- }
- };
- int main() {
- Point p1(10, 10);
- Point p2(10, 5);
- p1++;
- p1--;
- p1.pecati();
- return 0;
- }
- // overload
- // override
- /*
- a: 4 3 2 1 1
- b: 6 4 3 6 1 6
- c: 4 3 2 1
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement