首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2018-09-13
61
问题
使用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 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:vinualpublic TestClassA (2)将“class TestClassC:”补充完整为:class TestClassC:virtual public TestClassA (3)将“class TestClassD:”补充完整为:class TestClassD:public TestClassB,public TestClassC (4)添加语句:TestClassA::fun();TestCklssB::fun();TestClassC::fun();
解析
(1)题目1要求“完成类B虚继承于A”。在C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TestclassA为基类,TestClassB为派生类,所以第1个标识下修改为“class TestclassB:virtual Dublic 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://kaotiyun.com/show/ofAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout<<setprecision(3)<<f
下列关于运算符重载的描述中,正确的是()。
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列叙述中错误的是()。
下列选项中不属于结构化程序设计方法的是()。
下列选项中,不是算法的基本特征的是()。
如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果是______。#include<iostream>usingnamespacestd;c
为用户与数据库系统提供接口的语言是
类clasgone在声明func成员函数时发生错误,出错原因是______。classoneprivate:inta;public:voidfunc(two&);};class
若已定义inta[]={1,2,3,4,5,6,7,8,9,10},p=a,i=5;则对数组元素的不正确的引用是
结构化程序设计的3种基本结构分别是顺序、选择和______。
随机试题
老师两次用同一张试卷测试相同的学生,结果两次学生的分数相同,这种分数的稳定性是()
对于牙槽突吸收的早期改变、早期龋的准确诊断,最适合的检查技术是
男性,21岁。骑跨伤后,尿道口滴血,不能排尿,试插尿管失败,最佳处理是
按照施工过程中实施见证取样的要求,监理机构中负责见证取样工作韵人员一般为( )。
2012年2月,C市召开的人大常委会议上,由C市市长提名的卫生局长任命任选被人大否决,这说明()。
[2014年第33题]近10年来,某电脑公司的个人笔记本电脑的销量持续增长,但其增长率低于该公司所有产品总销量的增长率。以下哪项关于该公司的陈述与上述信息相冲突?
Wheredoestheconversationtakeplace?
•Readtheletterbelowaboutakindofserviceofferedbyacompany.•Inmostofthelines41-52thereisoneextraword.Itis
Youshouldspendabout20minutesonQuestions1-13,whicharebasedonReadingPassage1below.Whatthe
A、Towriteabusinessletter.B、Toprovideproofofthedeal.C、Tofindoutthemistakesofaletter.D、Tofinishreadingthele
最新回复
(
0
)