Class CDer2由于你自己已经写了一个构造函数,所以就不会有默认的构造函数,因为你的CDer2类继承了CRoot类,所以声明CDer2 C;的时候会默认调用CRoot的无参构造函数,所以small会被初始化为2,当你的C对象调用showsmall()函数的时候,是调用的父类的showsmall()函数,也就会显示出small = 2的结果,要想显示small = 0,只要自己在CDer2类中写一个showsmall()函数,覆盖父类的showsmall()函数。
2009-12-30 16:55