求教关于继承与引用
求教给位下面这个程序的输出结果,并解释
#include <iostream>
using namespace std;
class BC
{
public:
void fun(){cout<<"bc"<<endl;}
};
class DC:public BC
{
public:
void fun(){cout<<"dc"<<endl;}
};
int main()
{
BC *pbc;
DC dc;
pbc=&dc;
pbc->fun();
return 0;
}
我觉得这个程序运行结果应该是DC的啊,因为主函数里pbc=&dc的时候,pbcde 取址dc了啊,这样他不就指向DC的fun了吗?
可是运行结果为什么是bc呢?
C+新手,请大神们详细解释啊,谢谢了!!
[解决办法]