首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。 通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。 通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2017-06-19
27
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。
通过继承完成输入到屏幕指定的信息:
TestClassA
TestClassB
TestClassC
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)完成类B虚继承于A,请在注释//********1********后添加适当的语句。
(2)完成类C虚继承于A,请在注释//********2********后添加适当的语句。
(3)完成类D继承于B,C,请在注释//********3********后添加适当的语句。
(4)函数fun过调用基类的fun,完成所输出的内容,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#inc1ude<iostream.h>
c1ass TestClassA
{
public:
void fun(){
cout<<.’TestClassA”<<end1;
)
);
//********1********
c1ass TestClassB
{
public:
void fun()
{
cout<<"TestClassB"<<end1;
}
);
//********2********
c1ass TestClassC
{
public:
void fun()
{
cout<<"TestClassC"<<end1;
}
};
//********3********
c1ass TestClassD
{
public:
void fun()
{
********4********
}
};
void main()
{
TestClassD test;
test.fun();
return;
};
选项
答案
(1)将“class Test Class B:”补充完整为:class Test Class B:virtual public Test Class A (2)将“class Test Class C:”补充完整为:class Test Class C:virtual public Test Class A (3)将“class Test Class D:”补充完整为:class Test Class D:public TestClass B.public Test Class C (4)添加语句:Test Class A::fun();Test ClassB::fun();TestClassC::fun();
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类和函数fun实现各种输出操作。
(1)题目l要求“完成类B虚继承于A”。在C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TestClassA为基类,TestClassB为派生类,所以第1个标识下修改为“class TestClassB:virtual public TestClassA”。
(2)同(1),题目2和题目3中要求的标识2和3下的语句修改为“class TestClassC:virtual 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://jikaoti.com/ti/16t0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于类和对象描述错误的是
若需要把一个函数"void Func();"定义为一个类Sample的友元函数,则应在类 Sample的定义中加入一条语句【 】。
为了避免嵌套的if...else语句的二义性,C++规定与else配对的是
下列程序完成从文件读取文件显示的同时写入第二个文件,则在程序中划线部分应该出现的语句是【 】。#include<iostream,h>#include<fstream,h>voidmain(){fstreamfilel,file2
下列运算符中,在C++语言中不能重载的是( )。
线性表是一个具有n个( )的有限序列。
含有纯虚函数的类称为【】。
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为
设有以下变量定义,并已赋确定的值,charw;intx;floaty;doublez;则表达式:w*x+z-y所求得的数据类型为______。
下列运算符中,*运算符在C++中不能重载()。
随机试题
小马老师喜欢把班级中学生们的表现“晒”在班级群里,这些图片中既有那些认真听讲、努力完成作业的学生,也有上课走神、作业马虎的学生。她将微信群作为及时反馈学生情况的工具,这一做法却遭到家长的强烈反对和抵制,因为小马老师在微信群里的行为()。
A、白细胞增高伴淋巴细胞比例增高B、白细胞增高伴明显核左移C、白细胞增高伴单核细胞比例增高D、白细胞增高伴嗜酸性、嗜碱性粒细胞增高E、白细胞增高伴中性粒细胞减少急性化脓性细菌感染
某男,46岁,突患急性支气管炎,症见身热口渴,咳嗽痰盛,喘促气逆,胸膈满闷,医师诊断为表寒里热之咳喘。根据医师诊断,适宜患者服用的成药是
社会主义法发挥组织经济的作用,必须按照经济规律办事,并且()。
关于递延年金,下列说法正确的有()。
战略性薪酬管理的核心是在( )情况下作出的一系列的战略性薪酬决策。
下列关于制定正常标准成本的表述中,正确的是()。(2010年)
从内存中清除内存变量的命令是
如果一个字段在多数情况下取一个固定的值,可以将这个值设置成字段的
Beggarscanbeseenonthestreets,subwayorat【C1】______spotsinalmostallthebigcities.Someareforrealandneedthemon
最新回复
(
0
)