打卡

class Adder{
private:
int num;
public:
Adder(int n = 0);
Adder(const Adder &adder);
~Adder();
void setNum(int Num);
int getNum() const;
Adder operator+(Adder &a);
Adder& operator++(void);
const Adder operator++(int);
void show() const;
};
Adder :: Adder(int n){
num = n;
cout << "Adder Constructor run" << endl;
}
Adder :: Adder(const Adder &adder){
num = adder.num;
cout << "Adder CopyConstructor run" << endl;
}
Adder :: ~Adder(){
cout << "Adder Destructor run" << endl;
}
void Adder::setNum(int Num)
{
num=Num;
}
int Adder::getNum()const
{
return num;
}
Adder Adder::operator+(Adder &a)
{
num = num + a.num;
return (Adder(getNum()));
}
Adder& Adder::operator++(void)
{
num++;
return *this;
}
const Adder Adder::operator++(int)
{
Adder ad=*this;
++(*this);
return ad;
}
void Adder::show()const
{
cout<<"Adder("<<num<<")"<<endl;
}

浙公网安备 33010602011771号