#include <iostream>

class Ball 
{
    public: 
        Ball();
        ~Ball();
        int get_number();
        void set_number(int number);
    protected:
    private: 
        int number;
};

Ball::Ball()
{
    this->number = 1;
}

Ball::~Ball()
{
    std::cout << "Goodbye, World!" << std::endl;
}

int Ball::get_number()
{
    return this->number;
}

void Ball::set_number(int number)
{
    this->number = number;
}

int main()
{
    Ball ball1, ball2;
    ball1.set_number(100000);
    ball2.set_number(0);
    std::cout << ball1.get_number() << std::endl;
    std::cout << ball2.get_number() << std::endl;
    std::swap(ball1, ball2);
    std::cout << ball1.get_number() << std::endl;
    std::cout << ball2.get_number() << std::endl;
    delete &ball1;
    delete &ball2;
    return 0;
}