[试题]

应添加“BA(intm){a=m;}”。 (2)应添加“PAl(intm,intn):BA(n){b=m;}”。 (3)应添力Ⅱ“PA2(intm,intn,intk):PAl(n,k){C=m;)”。 (4)应添加“cout<<geta<<""<<getb<<""<<C<<endl;”。 (解析)根据第1处要求,构造函数的函数名和类名一致,显然BA构造函数的名称为BA,在BA中通过参数m完成对成员变量a的赋值,因此构造函数的名称为BA(intm),在函数内部对成员a赋值,故第1处的语句应添加“BA(intm){a=m;)”。根据第2处的要求,构造函数的形式为“PAl(intm,intn)”,m赋值给PA1类成员b,将n作为基类BA构造函数的参数值传入,故第2处应添加“PA1(intm,intn):BA(n){b=m;}”。根据第3处的要求,函数形式为PA2(intm,intn,intk),在构造函数中将m赋值给数据成员c,将n和k分别赋值给基类PA1构造函数的参数m和n,因此第3处应添加“PA2(intm,intn,intk):PA1(n,k){C=m;}”。根据第4处的要求,PA2类公有派生于PA1,而PA1公有派生于BA,因此在PA2类中可以调用基类的geta和getb来获得基类私有成员a和b,再输出PA2的私有成员C即满足要求,因此第4处应添加“cout<<geta<<""<<getb<<""<<C<<endl;”。

参考答案与解析:

相关试题

有以下程序:intm=1;void fun(int*n){ static int

[单选题]有以下程序: int m=1; void fun(int *n) { static int m=2; *n*=m-1; m+=2; } main() { int i; for(i=1;i<4;i++) { fun(&m); printf("%d",m); } } 程序的输出结果是( )A.1317B.2630C.1315D.1111

  • 查看答案
  • 应添加“virtualvoidGetNamt!=0;”。 (2)应添加“cons

    [试题]应添加“virtualvoidGetNamt!=0;”。 (2)应添加“constchar*GetName2”。 (3)应添加“TC2(char*str)”。 (4)应添加“m_str[i]=0;”。 (解析)本题第1处要求“在类TC1中定义接口函数GetName,为纯虚函数”。在C++中,在基类中用virtual声明成员函数为虚函数。纯虚函数是在声明虚函数时被“初始化”为0的函数,即“virtualvoidGetName=0;”。第2处要求“函数GetName2实现获得名字的缓存,但只获得读允许

  • 查看答案
  • 应添加“intseta(intx)”。 (2)应添加“classTC3:publ

    [试题]应添加“intseta(intx)”。 (2)应添加“classTC3:publicTC1,privateTC2”。 (3)应添加“intC;”。 (4)应添加“seta(x);”。 (解析)本题第1处要求“完成类TCl的成员函数seta定义,定义seta对象X为int类型”。类的成员函数是函数的一种,它与一般函数的区别是,它是一个类的成员,出现在类体中。所以类TCl中的成员函数,就是在TCl中定义题目中要求的参数为intx的seta函数,即“intseta(intx)”。第2处要求“完成类TCl

  • 查看答案
  • 应添加“defineTRUE1”。 (2)应添加“classA1;”。 (3)应

    [试题]应添加“defineTRUE1”。 (2)应添加“classA1;”。 (3)应添加“friendboolfunc(A2&objl,Al&应添加“defineTRUE1”。 (2)应添加“classA1;”。 (3)应添加“friendboolfunc(A2&objl,Al&obj2);”。 (4)将“retllin”补充完整为“returnobjl.m_A2==TRUE&&obj2.m_A1==TRUE;”。 (解析)define命令一般用一个指定的标识符(即宏 名

  • 查看答案
  • 有以下程序:main(){intm=3,n=4,x;x;£­m£«£«;x=x£

    [单选题]有以下程序: main() { int m=3,n=4,x; x;-m++; x=x+8/++n; printf("%d/n",x); } 程序运行后的输出结果是( )。A.3B.5C.-1D.-2

  • 查看答案
  • 已知intm;floatk;正确的语句是

    [单选题]已知int m;float k;正确的语句是A.(int k)%mB.int(k)%mC.int(k%m)D.(int)k%m

  • 查看答案
  • 设有定义:Strings=“World”;,下列语句错误的是( )。A、intm

    [单选题]设有定义:Strings=“World”;,下列语句错误的是( )。A.intm=s.indexOf(‘r’);B.charc=s.charAt(0);C.intn=s.length();D.Stringstr=s.append(‘2’);

  • 查看答案
  • 以下程序的运行结果是________。 intk=0;voidfun(intm)

    [试题]以下程序的运行结果是________。int k=0;void fun(int m){ m+=k; k+=m; printf(“m=%d/n k=%d ”,m,k++);}main(){ int i=4;fun(i++); printf(“i=%d k=%d/n”,i,k);}

  • 查看答案
  • "以下程序输出结果是main(){intm=5;if(m++>5print(""

    [单选题]"以下程序输出结果是main(){intm=5;if(m++>5print(""%d/n"",m);elseprintf(""%d/n"",m--);}A . 7B . 6C . 5D . 4

  • 查看答案
  • 添加婴儿辅助食品时,应优先添加的是( )。

    [单选题]添加婴儿辅助食品时,应优先添加的是( )。

  • 查看答案