C++继承多态小问题
#include <iostream>#include <string>using namespace std;class Base{public: Base(){cout<<"Base"<<endl;} void display1(){cout<<"Base display1"<<endl;} virtual void display2(){cout<<"Base display2"<<endl;}};class Derived : public Base{public: Derived(){cout<<"Derived"<<endl;} void display1(){cout<<"Derived display1"<<endl;} void display2(){cout<<"Derived display2"<<endl;}};void main(){ Base *pB=new Derived; pB->display1(); pB->display2(); delete pB; pB=NULL; cout<<"------------------------------"<<endl; Derived *pD=new Derived; pD->display1(); pD->display2(); delete pD; pD=NULL; cout<<"------------------------------"<<endl; Base *pb=new Base; pb->display1(); pb->display2(); delete pb; pb=NULL;}