多态性11
#include<iostream>
using namespace std;
class BaseClass {
public:
virtual void fn1() const{
cout<<"BaseClass:fn1()"<<endl;
}
void fn2() const{
cout<<"BaseClass:fn2()"<<endl;
}
};
class DerivedClass:public BaseClass{
public:
virtual void fn1() const override{
cout<<"DerivedClass:fn1()"<<endl;
}
void fn2() const{
cout<<"DerivedClass:fn2()"<<endl;
}
};
int main()
{
DerivedClass dc;
BaseClass *pb=&dc;
DerivedClass *pd=&dc;
pb->fn1();
pb->fn2();
pd->fn1();
pd->fn2();
return 0;
}