#include <iostream>
using namespace std;
class A{
int a = 10;
public:
int get_a(){
cout<<a;
return a;
}
virtual void display() const {
cout<<"Base class virtual fun";
}
};
class B: public A{
int b = 5;
public:
void get_b(){
cout<<b;
}
B(){}
B(B& ob){
b = ob.b;
cout<<"In Copy Constructor"<<endl;
}
void display() const{
cout<<"Derived class base fun"<<endl;
}
};
void dofun(const A& ob) {
ob.display();
}
int main() {
// your code goes here
B ob1;
dofun(ob1);
//cout<<endl<<ret;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQXsKCWludCBhID0gMTA7CglwdWJsaWM6CglpbnQgZ2V0X2EoKXsKCQljb3V0PDxhOwoJCXJldHVybiBhOwoJCgl9Cgl2aXJ0dWFsIHZvaWQgZGlzcGxheSgpIGNvbnN0IHsKCQljb3V0PDwiQmFzZSBjbGFzcyB2aXJ0dWFsIGZ1biI7Cgl9Cn07CmNsYXNzIEI6IHB1YmxpYyBBewoJaW50IGIgPSA1OwoJcHVibGljOgoJdm9pZCBnZXRfYigpewoJCSBjb3V0PDxiOwkJCgl9CglCKCl7fQoJQihCJiBvYil7CgkJYiA9IG9iLmI7CgkJY291dDw8IkluIENvcHkgQ29uc3RydWN0b3IiPDxlbmRsOwoJfQoJdm9pZCBkaXNwbGF5KCkgY29uc3R7CgkJY291dDw8IkRlcml2ZWQgY2xhc3MgYmFzZSBmdW4iPDxlbmRsOwoJfQkKfTsKdm9pZCBkb2Z1bihjb25zdCBBJiBvYikgewoJb2IuZGlzcGxheSgpOwp9CgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCUIgb2IxOwoJZG9mdW4ob2IxKTsKCS8vY291dDw8ZW5kbDw8cmV0OwoJcmV0dXJuIDA7Cn0=