首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB YestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB YestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2020-07-23
68
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息:
TestClassA
TestClassB
YestClassC
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)完成类B虚继承于A,请在注释//********1********后添加适当的语句。
(2)完成类C虚继承于A,请在注释//********2********后添加适当的语句。
(3)完成类D继承于B,C,请在注释//********3********后添加适当的语句。
(4)函数fun通过调用基类的fun,完成所输出的内容,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include
class TestClassA
{
public:
void fun(){
cout<<”TestClassA”<
}
};
//********1********
class TestClassB
{
public:
void fun()
{
cout<<“TestClassB”<
}
};
//********2********
class TestClassC
{
public:
void fun()
{
cout<<“TestClassC”<
}
);
//********3********
class TestClassD
{
public:
void fun()
{
//********4********
}
};
void main()
{
TestClassD test;
test.fun();
return;
);
选项
答案
(1)将“class TestClassB:”补充完整为:class TestClassB:virtual Dublic TestClassA (2)将“class TestClassC:”补充完整为:class TestClassC:vinual public TestClassA (3)将“class TestClassD:”补充完整为:class TestClassD:public TestClassB,public TesstClassC (4)添加语句:TestClaSsA::fun();TestClaSsB::fun();TestClassC::fun();
解析
在VC环境下手打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main丰函数开始入手,可以看出程序通过调用类和函数fun实现各种输出操作。
【解题思路】
(1)题目l要求“完成类B虚继承于A”。存C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TestclassA由基类,TestClassB为派生类,所以第1个标识下修改为“class TestclassB:vinual Dublic TestClassA”。
(2)同(1),题目2和题目3中要求的标识2和3下的语句修改为“class TestClassC:Vinual public TestClassA " 和 “class TestClassD:public TestClassB,public TestClassC”。
(3)题日4要求“函数fun通过调用基类的fun,完成所输出的内容”。在C++中调用基类的成员函数,要使用作用域限定符“::”,类名A::函数fun,就是调用类A的函数fun,根据题目中的要求补全对类TestclassA、TestclassB以及TestclassC中的fun函数,即“TestClassA::fun();TestClassB::fun();TestClassC::fun();”。
转载请注明原文地址:https://www.kaotiyun.com/show/WQyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classAA{public:AA(intn){cout
下列有关类继承的表述中,错误的是
下列枚举类型的定义中,包含枚举值5的是
有如下程序:#includeusingnamespacestd;classAppliance{public:Appliance(){}
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是
有如下程序#includeusingnamespacestd;classAA{charc;public:AA(charch):c(ch){}
下面能作为软件需求分析工具的是
有如下函数定义:voidswap(inta,int&b){intc=a;a=b;b=c;}若执行语句序列intx=0,y=1;swap(x,y);则变量x和y的值分别是
下列字符串中,不可以用做C++标识符的是()。
若实体A和B是一对一的联系,实体B和c是多对一的联系,财实体A和c的联系是()。
随机试题
驾驶机动车怎样通过立交桥左转弯?
假设现在经济均衡时的一点在IS曲线上,但在LM的右方,若要实现经济均衡,调节过程应是()
男性,67岁。患慢性支气管炎和肺气肿10年,合并高血压病,后者药物控制良好,1d前于剧咳后突感右侧胸痛,呼气困难加重,不能平卧就诊,其最可能的原因是()
为非特异性梅毒血清试验的是
已知平面向量a=(1,2),平面向量b=(3,4),则a.b=()
现代教育评价的评价主体由一元向多元发展,评价对象由被动等待向主动参与发展。()
一个完整的教学过程包括哪些部分?
阿富汗战争是一场典型的非对称战争,美军以空中精确打击为主要作战样式,地面作战采取“以阿制阿”的策略。美军依仗其强大的海空军力量,实施无前沿基地依托作战,以空中精确打击为主要作战样式。关于上面的表述,复述最准确的是()。
某乡间公路附近经常有鸡群聚集,这些鸡群对这条公路上高速行驶的汽车的安全造成了威胁。为了解决这个问题,当地交通部门计划购人一群猎狗来驱赶鸡群。以下哪项如果为真,最能对上述计划构成质疑?
将考生文件夹下ERPO文件夹中SGACYL.DAT文件移动到考生文件夹下,并改名为ADMICR.DAT。
最新回复
(
0
)