class Base
{
public:
Base()
{
cout<<"base class"<<endl;
fun();
}
virtual void fun(){cout<<"fun of base"<<endl;}
};
class Derive:public Base
{
public:
Derive()
{
cout<<"derive class"<<endl;
fun();
}
void fun(){ cout<<"fun of derive"<<endl;}
};
void main()
{
Derive d;
}
उत्पादन होता है:क्यों मेरी वर्चुअल विधि ओवरराइड नहीं है?
base class
fun of base
derive class
fun of derive
क्यों दूसरी पंक्ति fun of derive
नहीं है?
पढ़ना सामग्री: ["कभी भी निर्माण या विनाश के दौरान वर्चुअल फ़ंक्शंस को कॉल न करें"] (http://www.artima.com/cppsource/nevercall.html)। –