注册 登录
编程论坛 C++教室

为什么会是这样?

zhangfuhua 发布于 2008-02-22 19:27, 915 次点击
#include<iostream>

using namespace std;

class base
{
   public:
          virtual void show()=0;
};

class D1:public base
{
      private:
              void show()
              {cout<<"D1"<<endl;}
};

class D2:public base
{
      private:
              void show()
              {cout<<"D2"<<endl;}
};

void fun(base& a)
{a.show();}
      
int main()
{
    D1 d1;
    D2 d2;
    fun(d1);
    fun(d2);  
return 0;
}

大家看看这段代码输出的是什么?
为什么?
谢谢!
2 回复
#2
sunkaidong2008-02-22 20:28
D1
D2
动态联编
#3
zhangfuhua2008-02-23 09:59
继承、多态没搞明白哦
看书去了
1