1 #include2 #include 3 using namespace std; 4 5 class Animal{ 6 public: 7 Animal(string name) : name(name){} 8 void printName(){ 9 cout< < printName();57 /*派生类对象赋值给基类指针,则不会发生截断*/58 PAnimal->printSpecialSkill();59 60 PAnimal = &ObjFish;61 PAnimal->printName();62 PAnimal->printSpecialSkill();63 }
1.没有从基类引用(或基类指针)到派生类引用(或派生类指针)的自动转换。
2.派生类型的对象,可以用它的地址对基类类型的指针进行赋值或者初始化。
3.派生类型的对象赋值到基类类型,派生对象部分的函数和数据成员会被截断。