继承的一点认识
Posted bohat
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了继承的一点认识相关的知识,希望对你有一定的参考价值。
在类的继承当中,如果派生类继承自父类。
派生类想要调用父类的函数只需要
1 class A{ 2 public: 3 computePay(); 4 } 5 6 class B:public A 7 { 8 public: 9 computePay(); 10 } 11 B b1; 12 A a1; 13 b1.A::computePay(); 14 b1.computePay();
但假如使用了指针指向一个类。
1 A *p; 2 B *b; 3 B b1; 4 p = &b1; 5 b = &b1; 6 p->computePay(); //调用的是 A的函数 7 b->computePay(); //调用的是B的函数
到底调用哪个函数,视指针的原始类型而定。
由此可以得出三个结论:
一、以基类指针指向衍生类对象,由该指针只能调用基类所定义的函数
二、如果以衍生类指针指向一个基类对象,要先做显示的转型动作(不建议使用)
三、基类和衍生类都定义了相同名称的成员函数,透过对象指针调用成员函数时,视指针的原型而定。
以上是关于继承的一点认识的主要内容,如果未能解决你的问题,请参考以下文章