首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2021-09-05
38
问题
使用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<<f’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();
解析
在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类和函数fun实现各种输出操作。
(1)题目1要求“完成类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/BZc0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#inc1ude<iostream>usingnamespacestd;c1assB{public:B(intxx):x(xx){++count;x+=10;}virtual
若MyClass为一个类,执行“MyClassa[4],*p[5];”语句时会自动调用该类构造函数的次数是()。
下列叙述中正确的是()。
有如下程序:#includeusingnamespacestd;classMyClass{public:MyClass(){++count;}~MyClass(){--count;}
下列有关继承和派生的叙述中,正确的是()。
下列关于数据库设计的叙述中,正确的是()。
有如下类定义:classSample{public;Sample(intx):ref(x){}∥①private:Sample():ref(0){}∥②staticint
有如下函数模板定义:template<typenameT1,TypenameT2>T1Fun(T2n){returnn*5.0;)若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则
一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
在面向对象方法中,不属于“对象”基本特点的是()。
随机试题
脂酰CoAt3氧化发生的亚细胞部位是
构成表见代理,一般应具备()条件。①行为人的代理行为为无权代理;②在客观上有足以使相对人相信行为人有代理权的事实,如采购员或推销员拿着盖有单位公章的介绍信和空白合同文本;③相对人主观上无过错,即相对人不知道或不应当知道
一、背景某安装公司从建筑总承包公司分包一高层商务楼的通风空调安装工程,商务楼位于闹市中心,工期120天,要求当年夏天能竣工验收。工程的主要设备有:冷水机组(3490mm×1830mm×2920mm,12.4t)、蓄冰槽(6250mm×3150mm
在审计风险模型中,以下有关检查风险的说法中恰当的有()。
2011年1—9月,全国造船完工5101万载重吨,同比增长18.3%,9月当月完工786万载重吨,环比增长67.2%,新承接船舶订单规模2902万载重吨,同比下降42.8%,手持船舶订单规模16886万载重吨,同比下降13.8%,比2010年底下降1
ItwasonlywhenIrereadhispoemsrecently______Ibegantoappreciatetheirbeauty.
《教师资格条例》规定,被撤销教师资格的,自撤销之日起()年内不得重新申请认定教师资格。
有人主张货币的出现首先是为了把今天的价值保存起来,等明天、后天或未来任何时候,再把其中的价值用来购买别的东西。但货币同时也是跨地理位置的价值交换,今天在甲地把东西卖了,带上钱到乙地,又可以用这些钱去买想要的东西。因此,货币解决了价值跨时间的________
Shehassuchexceptionalabilitiesthateveryoneisjealousofher.
Thespacebetweenthestarsisfilledwithmatterthatinterstellarconditionsshouldpreventfromcoalescingintosolidparticl
最新回复
(
0
)