(2) 将“Base”类中的“virtual void show()”改为“virtual void show()=0”,重新编译程序会出现编译错误,其中的“show() ”称为纯虚函数,该类称为抽象类,出错原因是抽象类不能实例化。

(3) 输出结果为:

a=10 b=20

因为去掉了“Base mb;”及“mp=&mb; mp->show();”,不再创建Base类的对象,程序只输出派生类对象的数据成员。

#include iostreamusing namespace std;class Base public 		virtual void show		 coutBase 该类无计算endl; ;class Derived1public Baseint a ;	public	Derived1int x	a=x;void show cout a=aendl;	;class Derived2publi

原文地址: https://www.cveoy.top/t/topic/eY3Q 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录