#include <iostream>
using namespace std;
class A
{
int myint;
public:
A():myint(0)
{
cout << this << " A():myint(0) myint == "<<myint<<endl;
}
A(int i):myint(i)
{
cout << this << " A(int i):myint(i) myint == "<<myint<<endl;
}
~A()
{
cout << this << " delete A()"<<endl;
}
A& operator=(const A &other) {
cout << "Assign " << &other << " to " << this << endl;
myint = other.myint;
}
};
int main()
{
A a;
a = 2;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIEEKewogICAgaW50IG15aW50OwpwdWJsaWM6CiAgICBBKCk6bXlpbnQoMCkKICAgIHsKICAgICAgICBjb3V0IDw8IHRoaXMgPDwgIiBBKCk6bXlpbnQoMCkgbXlpbnQgPT0gIjw8bXlpbnQ8PGVuZGw7CiAgICB9CiAgICBBKGludCBpKTpteWludChpKQogICAgewogICAgICAgIGNvdXQgPDwgdGhpcyA8PCAiIEEoaW50IGkpOm15aW50KGkpIG15aW50ID09ICI8PG15aW50PDxlbmRsOwogICAgfQogICAgfkEoKQogICAgewogICAgICAgIGNvdXQgPDwgdGhpcyA8PCAiIGRlbGV0ZSBBKCkiPDxlbmRsOwogICAgfQoKICAgIEEmIG9wZXJhdG9yPShjb25zdCBBICZvdGhlcikgewogICAgICAgIGNvdXQgPDwgIkFzc2lnbiAiIDw8ICZvdGhlciA8PCAiIHRvICIgPDwgdGhpcyA8PCBlbmRsOwogICAgICAgIG15aW50ID0gb3RoZXIubXlpbnQ7CiAgICB9Cn07CgoKaW50IG1haW4oKQp7CiAgICBBIGE7CiAgICBhID0gMjsKCiAgICByZXR1cm4gMDsKfQo=