首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
要使程序执行后的输出结果为ABCD,应在横线处添加语句( )。 #include using namespace std; classA { public:A(){cout
要使程序执行后的输出结果为ABCD,应在横线处添加语句( )。 #include using namespace std; classA { public:A(){cout
admin
2012-12-29
56
问题
要使程序执行后的输出结果为ABCD,应在横线处添加语句( )。
#include
using namespace std;
classA
{
public:A(){cout<<‘A’;}
};
class B:___________
{
public:B0{cout<<‘B’;}
};
class C:virtual public A
{
public:C0{cout<<‘C’;}
);
class D:public B,public C
{
public:D0{cout<<‘D’;}
};
void main0{D obj;)
选项
A、publicA
B、privateA
C、protectedA
D、virtualpublicA
答案
D
解析
由主函数main入手,定义了类D对象obj。其中D为类B和C的公有继承,A是C的虚基类。题目中要求的输出结果为“ABCD”,依次为类A,类B,类C,类D中构造函数的输出语句。为了保证基类通过多条路径被派生类继承时,即保证A只被继承一次,输出一个A,所以不但需要声明A为C的虚基类,同样也要声明A为B的虚基类。
转载请注明原文地址:https://kaotiyun.com/show/qMVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
某系统结构图如下图所示(n≥5) 该系统结构图的最大扇出数是()。
下列叙述中正确的是()。
以下叙述中错误的是()。
有下列程序 #include<stdio.h> main() { char*P="6938"; inti,s=0; for(i=3;i>=0;i--) s=10*s+p[i]-’0’; printf(
有以下程序: #include<stdio.h> voidf(int*p,int*q); main() { intm=1,n=2,*r=&m; f(r,&n); printf("%d,%d",m,n); } vo
有以下程序: #include<stdio.h> main() { chars[]={"012xy"}; inti,n=0; for(i=0;s[i]!=0;i++) if(s[i]>=’a’&&s[i]<=’z’)
若以“a+”方式打开一个已存在的文件,以下叙述正确的是()。
下面对“对象”概念描述正确的是()。
以下选项中不能作为C语言合法常量的是()。
随机试题
将填充材料用铁钉固定在模板内侧后,再浇混凝土,这样拆模后填充材料即可贴在混凝土上。这种填料安装方法是()。
拔牙后出血是指拔牙后多长时间仍明显出血
下列说法错误的是()。
在设备购置费的构成内容中,不含有()费。
在事先确定企业资本规模的前提下,吸收一定比例的债务资本,可能产生的结果有()。
部分简报为了说明编发简报的目的或对简报的内容进行评论,往往加注编者按。编者按的位置在()。
请谈一件你最成功的事。
A、 B、 C、 C
Krygersaidinaninterviewthateverybodyneedsadifferentamountofsleep.Gettingsufficientamountsofshut-eyeisa"life-
A、Hekeepschanginghisjobs.B、Hecan’tearnenoughmoneytosupportthefamily.C、Hehasgotabadtemper.D、Hehasfallenin
最新回复
(
0
)