首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。 通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。 通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2017-06-19
62
问题
使用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://kaotiyun.com/show/MQAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列叙述中错误的是
下列叙述中正确的是
在下列基类的定义中,有无virtual修饰use成员函数的结果将不同,其原因是【 】。当use()为虚拟函数时的程序执行结果:sizeof(A)=8sizeof(B)=12
下列程序中的重载函数disp()发生错误,错误原因是【 】。#include<iostream,h>classSample{priva
设px是指向一个类动态对象的指针变量,则执行"delete px;"语句时,将自动调用该类的【 】。
将E-R图转换到关系模式时,实体与实体间的联系可以表示成( )。
一棵二叉树中所含最少的结点数是
在一个容量为32的循环队列中,若头指针front=3,尾指针rear=2,则该循环队列中共有______个元素。
在MyClass类的定义中,对赋值运算符;进行重载。请将横线处缺失的部分补充完整。______MyClass::operator=(constMyClass&rhs){if(this==&rhs)return*t
C++本身没有定义I/O操作,但I/O操作包含在C++实现中。C++标准库iostream提供了基本的I/O类。I/O操作分别由类istream和()提供。
随机试题
A.泻白散合黛蛤散B.龙胆泻肝汤C.柴胡疏肝散D.丹栀逍遥散E.滋水清肝饮吐血色红或紫黯,口苦,胁痛,心烦易怒,寐少多梦,舌质红绛,脉弦数。治疗应首选
上述场景中的设计合同法律关系中,法律关系主体是( )。民事法律关系内容,是指民事主体之间基于民事法律关系客体所形成的民事权利和民事义务,这种法律权利和法律义务的来源可以分为( )。
合同权利义务的终止原因中有因合同混同而终止的,其中不符合混同原因的是()。
作为完全由中国人掌握知识产权的家用轿车,安徽省的()已成为中国轿车的著名品牌。
在我国,必须依法登记注册才能取得民事主体资格的是()。
下列法律概念中,属于客体概念的是()。
求下列极限:
下列叙述中正确的是()。
A、No,yougoyourself.B、Yes,please.C、No,Iwouldn’t.D、Yes,I’dloveto.DI’dloveto=I’dlovetogoswimmingwithyou.
A、Emailherlecturenotestotheman.B、Copythelecturenotesfortheman.C、Helpthemanlearnthecoursehemissed.D、Lendhe
最新回复
(
0
)