首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息; TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息; TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2017-04-24
34
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息;
TestClassA
TestClassB
TestClassC
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)完成类B虚继承于A,请在注释//********1********后添加适当的语句。
(2)完成类C虚继承于A,请在注释//********2********后添加适当的语句。
(3)完成类D继承于B,C,请在注释//********3********后添加适当的语句。
(4)函数fun通过调用基类的fun,完成所输出的内容,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include<iostream.h>
class TestClassA
{
public:
void fun(){
cout<<’’TestClassA’’<<endl;
}
};
//********1********
class TestClassB
{
public:
void fun()
{
cout<<’’TestClassB’’<<endl;
}
};
//********2********
class TestClassC
{
public:
void fun()
{
cout<<’’TestClassC’’<<endl;
}
};
//********3********
clasS TestClassD
{
public:
void fun()
{
//********4********
}
};
void main()
{
TestClassD test;
test.fun();
return;
}
选项
答案
(1)将“class TestClassB:”补充完整为:class TestClassB:virtual public TestClassA (2)将“class TestClassC:”补充完整为:class TestClassC:virtual public TestClassA (3)将“class TestClassD:”补充完整为:class TestClassD:public TestClassB,public TestClassC (4)添功语句:TestClassA::fun();TestClassB::fun();TestClassC::fun();
解析
(1)题目1要求“完成类B虚继承于A”。在C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TostClassA为基类,TestClassB为派生类,所以第1个标识下修改为“class TestClassB:virtual public TestClassA”。
(2)同(1),题目2和题目3中要求的标识2和3下的语句修改为“class TestClassC:virtual public TestClassA”和“class TestClassD:public TestCtassB,public TestClassC”。
(3)题目4要求“函数fun通过调用基类的fun,完成所输出的内容”。在C++中调用基类的成员函数,要使用作用域限定符“::”,类名A::函数fun,就是调用类A的函数fun,根据题目中的要求补全对类TestClassA、TestClassB以及TestClassC中的fun函数,即“TestClassA::fun();TestClassB::fun();TestClassC::fun();”。
转载请注明原文地址:https://kaotiyun.com/show/W2Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;ClassTest{public:Test(){}Test(constTest&t){cout
要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是()
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件的是()。
生产一个最终能满足需求并且达到工程目标的软件产品所需要的步骤被称为【 】。
一个项目具有一个项目主管,一个项目主管可管理多个项目。则实体集"项目主管"与实体集"项目"的联系属于______的联系。
已知程序中已经定义了函数test,其原型是inttest(int,int,int);,则下列重载形式中正确的是
若需要定义一个标识符常量,并且使得C++能够进行类型检查,则应在定义语句的开始使用保留字【 】。
( )既可重载为一元运算符,又可重载为二元运算符。
定义如下枚举类型:enum Number{one=1,two=2,four=4,eight=8},则枚举类型Number的取值范围是( )。
以下非法的赋值表达式是()。
随机试题
“支配物质世界之运动的必然性,也支配精神世界的运动,因而在这个世界上,一切都服从于注定的命运。”这种观点
A.脊髓后角B.脊髓后索C.脊髓中央前连合D.脊髓丘脑束E.神经后根一侧肢体节段性痛温觉消失。深感觉保留,病变部位在
某运输公司在与客户签订运输合同时提供了一份格式合同,该格式合同运输方式为仓对仓运输。双方按此格式合同订约后,在履行中发生争议。运输公司认为仓对仓是指客户自己所有的仓库到所要运达的仓库,客户认为仓对仓是指货物所在的仓库到所要运达的仓库。下列说法正确的是(
对建筑装饰材料使用效果进行评价时,考虑建筑材料的经济性要有一个总体观念,既要考虑装饰工程一次性投资的多少,又要考虑售后服务的质量好坏。()
下列关于环境影响预测中的各种常用方法的表述,不正确的是()。
在识别社会因素过程中,属于影响人类生活和行为的因素有()。
下列创新组织中,不属于企业创新内部组织的是()。
甲、乙、丙三名搬运工同时分别在三个条件和工作量完全相同的仓库工作,搬完货物甲用10小时,乙用12小时,丙用15小时。第二天三人又到两个较大的仓库搬运货物,这两个仓库的工作量也相同,甲在A仓库,乙在B仓库,丙先帮甲后帮乙,结果干了16小时后同时搬运完毕,问:
就要约所作的以下表述中,说法正确的是()。
为了清除窗体上的一个控件,下列正确的操作是
最新回复
(
0
)