首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息: TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2020-06-29
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
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: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();
解析
(1)题目1要求“完成类B虚继承于A”。在C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TestClassA为基类,TestClassB为派生类,所以第1个标识下修改为“class TestClassB:virtual public1’estClassA”。
(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/NIyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列C++流的操作符中,能够设置下一个数据的输出宽度的是
耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )。
下列关于函数模板的表述中,正确的是
下列各序列中不是堆的是
下面不能作为软件设计工具的是
下列关于基类和派生类关系的叙述中,正确的是()。
下列关于函数模板的表述中,正确的是
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3,*v4;};其中定义错误的成员变量是
有如下类声明:classPam{intk;public:Pam(intn):k(n){}voidshow()const;};若要在类体外给出成员函数s
设c1和c2是类MyClass的对象,若将运算符"+"和"*"作为类MyClass的成员函数重载,则表达式c1+c2*c1等价于
随机试题
根据以下资料,回答以下问题。综合2011~2013年的数据,农村居民人均现金收入和城镇居民人均可支配收入最高的季度分别是:
肾综合征出血热属于
适合酸、碱或两性化合物分离精制的方法是根据分子量大小不同进行分离的方法是
羟甲戊二酰辅酶A还原酶(HMG-CoA还原酶)抑制剂的基本结构如下图,3,5-二羟基羧酸是产生酶抑制活性的必需结构,含有内酯的化合物须经水解才能起效,可看作前体药物,代表药物是洛伐他汀。中成药血脂康中含有的化学成分是
弃权与禁止反言的规定主要约束()。
下列项目中影响所有者权益(股东权益)变动表“本年年初余额”项目的因素是()。
关于商业银行资本的描述,正确的是( )。
思想性和科学性相统一的教学原则的贯彻要求有()。
【B1】【B6】
[A]book[B]pen[C]desk[D]doctor[E]teacher[F]classroom[G]writerHe/Shegives
最新回复
(
0
)