//yy.cpp #include class Animal { public: Animal( ) { cout << "A "; } virtual void talk( ){ cout << "haha "; } }; class Dog : public Animal { public: Dog( ) { cout << "D "; } void talk( ) { cout << "Won won "; } }; class Cat: public Animal { public: void talk( ) { cout << "Miao "; } Cat( ) { cout << "C "; } ~Cat( ) { cout << "C-dead "; } }; Dog a; int main( ) { Cat b; a.talk( ); b.talk( ); Animal * p; p = new Dog( ); p-> talk( ); p= new Cat( ); p-> talk( ); return 0; }