首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2015-08-14
83
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息:
TestClassA
TestClassB
TestClassC
其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(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 TcstClassB
{
public:
void fun()
{
cout<<"TestClassB"<
}
};
//********2********
class TestClassC
{
public:
void fun()
{
cout<<"TestClassC"<
}
};
//********3********
class TcstClassD
{
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,publicTestClassC (4)添加语句:TestClassA∷fuN();TcstClassB∷fun();TcstClassC∷fun()
解析
审题分析:
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类和函数fun实现各种输出操作。
解题思路:
(1)题目1要求“完成类B虚继承于A”。在C++中,声明虚摹类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TestClassA为基类,TcstClassB为派生类,所以第1个标识下修改为“class TestClassB:virtual public TcstClaasA”。
(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://kaotiyun.com/show/xvNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于纯虚函数,下列表述正确的是()。
下列对类的构造函数和析构函数的描述中,正确的是()。
有如下数组声明:intnum[10];,下标值引用错误的是
设有定义inta=1;floatf=1.2;charc=‘a’;,则下列表示错误的是
数据库设计分为以下6个设计阶段:需求分析阶段、【】、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。
为用户与数据库系统提供接口的语言是
下列叙述中正确的是
在不同文件的函数中,对非静态全局变量的引用要加的关键字是()。
程序的结果为【】。#include"iostream.h"template<typenameT>Ttotal(T*data){Ts=0;while(*data){s+
下列字符串中可以用作C++语言标识符的是
随机试题
食品卫生学的主要研究方法有()。
应用()和局部高温回火法在降低残余应力的同时还可以改善焊接接头的性能,提高塑性。
“发明神道之不诬”的作品是
患者,男,28岁。上腹痛、发热、恶心4小时后,出现右下腹痛。查体:右下腹固定性压痛,无腹肌紧张及反跳痛。应考虑哪种病理类型的阑尾炎?()
猪囊尾蚴病的传染源为
心脏前负荷过重见于
对于被困在火场的人来说,下列做法中不恰当的是()。
(2014黑龙江)一艘船往返于甲、乙两港口之间,已知水速为8千米/小时,该船从甲到乙需6小时,从乙返回甲需9小时,问甲、乙两港口的距离为多少千米?
[*]
NuclearengineerMeenaMutyalaarguesthatnuclearpowerisanenvironmentally______technology,operatingwithessentiallynoe
最新回复
(
0
)