#include <iostream>
using namespace std;
class one{
int a;
public:
void get(int);
void show();
};
class two:public one
{
int b;
public:
void getb(int);
void dis();
void show();
};
void one::get(int x) //if i write void two::get(int x) here it gives error
{
a = x;
}
void one::show() //same goes for this function why can't i define it as `void two::show()`?
{
cout << a << endl;
}
void two::show() //no problem !!
{
cout << "two's version" << endl;
}
int main()
{
two ob;
int x;
cin >> x;
ob.get( x );
ob.show();
ob.one::show();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIG9uZXsKICAgIGludCBhOwpwdWJsaWM6CiAgICB2b2lkIGdldChpbnQpOwogICAgdm9pZCBzaG93KCk7Cn07CgpjbGFzcyB0d286cHVibGljIG9uZQp7CiAgICBpbnQgYjsKcHVibGljOgogICAgdm9pZCBnZXRiKGludCk7CiAgICB2b2lkIGRpcygpOwogICAgdm9pZCBzaG93KCk7ICAKfTsKCnZvaWQgb25lOjpnZXQoaW50IHgpICAvL2lmIGkgd3JpdGUgdm9pZCB0d286OmdldChpbnQgeCkgaGVyZSBpdCBnaXZlcyBlcnJvcgp7CiAgICBhID0geDsKfQoKdm9pZCBvbmU6OnNob3coKSAgLy9zYW1lIGdvZXMgZm9yIHRoaXMgZnVuY3Rpb24gd2h5IGNhbid0IGkgZGVmaW5lIGl0IGFzIGB2b2lkIHR3bzo6c2hvdygpYD8KewogIGNvdXQgPDwgYSA8PCBlbmRsOwp9Cgp2b2lkIHR3bzo6c2hvdygpICAvL25vIHByb2JsZW0gISEKewogIGNvdXQgPDwgInR3bydzIHZlcnNpb24iIDw8IGVuZGw7Cn0KCmludCBtYWluKCkKewogICAgdHdvIG9iOwogICAgaW50IHg7CiAgICBjaW4gPj4geDsKICAgIG9iLmdldCggeCApOwogICAgb2Iuc2hvdygpOwogICAgb2Iub25lOjpzaG93KCk7IAp9