/* 1.基类指针可以指向派生类对象
2.但在指向派生类对象时,不能通过指针来调用派生类与基类同名函数,实现动态性质。
3.虚函数能解决这个问题,什么是虚函数?
*/
#include<iostream>
using namespace std;class base {
int a,b;
public:
base(int x,int y) { a=x; b=y; }
void show( )
{ cout<<"调用基类base的show函数\n";
cout<<"a=" <<a<<" b="<<b<<endl;
}
};
class dirive:public base {
int c;
public:
dirive(int x,int y,int z):base(x,y){c=z;}
void show( )
{ cout<< "调用派生类dirive的show函数\n";
cout<<"c="<<c<<endl;
}
};
void main( )
{ base mb(50,50), *mp;
dirive mc(10,20,30);
mp=&mb;
mp->show( ); //调用的是基类的show()函数;
mp=&mc;
mp->show( ); //还是调用的是基类的show()函数;
system("pause");
}