本文共 487 字,大约阅读时间需要 1 分钟。
1、如果你以一个"基类之指针"指向一个"派生类之对象",那么经由该指针你只能调用该基类所定义的函数3、如果基类和派生类都定义了“相同名称之函数”,那么通过对象指针调用成员函数时,到底调用了那个函数,必须视该指针的原始类型而定,而不是视指针实际所指的对象的类型而定,这与第1点其实意义相通。
class A{public: virtual void f1() { cout<<1; } void f2() { cout<<2; }};class B:public A{public: int i; void f1() { cout<<3; } void f2() { cout<<4; }};int main(){ B* pB; A a; pB=(B*)&a; pB->f1 ();//这个虚函数,是回调的基类的 pB->f2();//派生类对象不存在,竟然还可以调用派生类的函数 //pB->i = 5; return 0;}
1 4
转载地址:http://gseti.baihongyu.com/