class base{ public: int i; base(int x){int x;} virtual void func() { cout<<"Using base version of func():"; cout<<i<<'\n'; } }; class derived1: public base{ public: derived1(int x);base(x) { } void func() { cout<<" Using derived1's version of func():"; cout<<i*i<<'\n'; } }; class derived2:public base{ derived2(int x):base(x){ } void func() { cout<<"Using derived2's version of func():"; cout<<i+i<<'\n'; } }; int main() { base *p; derived1 d_ob1(10); derived2 d_ob2(10); int i,j; for(i=0;i<10;i++) { j=rand( ); if((j%2)) p = &d_ob2; p->func( ); } return 0; }
Liked By
Write Answer
How to use rand( ) in c ?
We use cookies to ensure you have the best browsing experience on our website. By using our site, you
acknowledge that you have read and understood our
Cookie Policy &
Privacy Policy
Join MindStick Community
You have need login or register for voting of answers or question.
AVADHESH PATEL
15-Jun-2013class base{public:
int i;
base(int x){int x;}
virtual void func()
{
cout<<"Using base version of func():";
cout<<i<<'\n';
}
};
class derived1: public base{
public:
derived1(int x);base(x) { }
void func()
{
cout<<" Using derived1's version of func():";
cout<<i*i<<'\n';
}
};
class derived2:public base{
derived2(int x):base(x){ }
void func()
{
cout<<"Using derived2's version of func():";
cout<<i+i<<'\n';
}
};
int main()
{
base *p;
derived1 d_ob1(10);
derived2 d_ob2(10);
int i,j;
for(i=0;i<10;i++)
{
j=rand( );
if((j%2)) p = &d_ob2;
p->func( );
}
return 0;
}