填空题

使用VC6打开考生文件夹下的工程test10_1,此工程包含一个源程序文件test10_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果为; class Base class D1 class D2 class D3 fin Base 源程序文件test10_1.cpp清单如下: #include<iostream.h> class Base { public: Base(){cout<<"class Base"<<endl;} void f(){cout<<"f in Base"<<endl;} }; class D1:virtual public Base { public: D1(){cout<<"class D1"<<endl;} void f(){cout<<"f in D1"<<endl;} }; /*********found**********/ class D2:public Base { public: D2(){cout<<"class D2"<<endl;} }; /**********found**********/ class D3::public D1,public D2 { public: D3(){cout<<"class D3"<<endl;} }; void main() { D3 d; /**********found************/ d.f(); }

【参考答案】

(1)错误:class D2:public Base 正确:class D2:virtual public Base......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文件夹下的工程test10_3,此工程包含一个源程序文件test10_3.cpp,其中定义了用于表示雇员信息的CEmployee类与表示公司信息的Company类,但这两个类的定义并不完整。请按要求完成下列操作。(1)定义Cemployee类的私有数据成员name(大小为50的字符数组)和pay(double型数据),分别用于记录雇员姓名和月薪。请在注释“ **1**”之后添加适当的语句。(2)完成Company类默认构造函数的定义,该构造函数将n值赋值给私有成员nam,并完成指针emp所指的n个 Cemployee对象空间的申请,请在注释“ **2**”之后添加适当的语句。(3)完成Company类成员函数void Company::add(int code,charname[50],doublepay)的定义,该函数将某一雇员的编号 code、姓名name及月薪pay输入到公司信息中。请在注释“ **3**”之后添加适当的语句。(4)完成Company类成员函数void Company::print()的定义,使其以“_is paid_RMB for oue month”的格式输出公司内所有员工的月薪信息。请在注释“ **4**”之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test10_3.cpp清单如下:#include<iostream.h>#include<string.h>class CEmployee{public:void putname(char n[50]){strcpy(name,n);)void getname(char n[501){strcpy(n,name);)void putpay(double d){pay=d;)double getpay(){return pay;)private: **1**};class Company{private:CEmployee *emp;int num;public:Company(int n);void add(int code,Char name[50],double pay);void print();}Company::Company(int n){ **2**}void Company::add(int code,Char name[50],double pay){ **3**}void Company::print(){ **4**for(int i=0;i<num;i++){(emp+i)->getname(C);money=(emp+i)->getpay();cout<<C<< is paid <<money<< RMB for one month <<endl;}}void main(){Company com(2);com.add(0, Jack ,200);com.add(1, Lee ,300);com.print();}