#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;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgQmFsbCAKewogICAgcHVibGljOiAKICAgICAgICBCYWxsKCk7CiAgICAgICAgfkJhbGwoKTsKICAgICAgICBpbnQgZ2V0X251bWJlcigpOwogICAgICAgIHZvaWQgc2V0X251bWJlcihpbnQgbnVtYmVyKTsKICAgIHByb3RlY3RlZDoKICAgIHByaXZhdGU6IAogICAgICAgIGludCBudW1iZXI7Cn07CgpCYWxsOjpCYWxsKCkKewogICAgdGhpcy0+bnVtYmVyID0gMTsKfQoKQmFsbDo6fkJhbGwoKQp7CiAgICBzdGQ6OmNvdXQgPDwgIkdvb2RieWUsIFdvcmxkISIgPDwgc3RkOjplbmRsOwp9CgppbnQgQmFsbDo6Z2V0X251bWJlcigpCnsKICAgIHJldHVybiB0aGlzLT5udW1iZXI7Cn0KCnZvaWQgQmFsbDo6c2V0X251bWJlcihpbnQgbnVtYmVyKQp7CiAgICB0aGlzLT5udW1iZXIgPSBudW1iZXI7Cn0KCmludCBtYWluKCkKewogICAgQmFsbCBiYWxsMSwgYmFsbDI7CiAgICBiYWxsMS5zZXRfbnVtYmVyKDEwMDAwMCk7CiAgICBiYWxsMi5zZXRfbnVtYmVyKDApOwogICAgc3RkOjpjb3V0IDw8IGJhbGwxLmdldF9udW1iZXIoKSA8PCBzdGQ6OmVuZGw7CiAgICBzdGQ6OmNvdXQgPDwgYmFsbDIuZ2V0X251bWJlcigpIDw8IHN0ZDo6ZW5kbDsKICAgIHN0ZDo6c3dhcChiYWxsMSwgYmFsbDIpOwogICAgc3RkOjpjb3V0IDw8IGJhbGwxLmdldF9udW1iZXIoKSA8PCBzdGQ6OmVuZGw7CiAgICBzdGQ6OmNvdXQgPDwgYmFsbDIuZ2V0X251bWJlcigpIDw8IHN0ZDo6ZW5kbDsKICAgIGRlbGV0ZSAmYmFsbDE7CiAgICBkZWxldGUgJmJhbGwyOwogICAgcmV0dXJuIDA7Cn0=