首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息; TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。通过继承完成输入到屏幕指定的信息; TestClassA TestClassB TestClassC 其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
admin
2017-04-24
16
问题
使用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<<’’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();
解析
(1)题目1要求“完成类B虚继承于A”。在C++中,声明虚基类的一般形式为:class派生类名:virtual继承方式基类名,由题目知道TostClassA为基类,TestClassB为派生类,所以第1个标识下修改为“class TestClassB:virtual public TestClassA”。
(2)同(1),题目2和题目3中要求的标识2和3下的语句修改为“class TestClassC:virtual public TestClassA”和“class TestClassD:public TestCtassB,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/I8t0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include#includeusingnamespacestd;intmain(){intS[]={123,234};cout
将运算符“+”重载为非成员函数,下列原型声明中,错误的是()。
关于函数中的,下列表述中错误的是()。
可以通过下面哪些函数实现类的多态性( )。
下面哪些函数采用动态联编( )?
下列叙述中正确的是
栈是线性表的一种,其新加、读取和删除结点只能在栈的( )进行操作。
设有一个10阶的对称矩阵A[10][10],采用压缩存储方式按行将矩阵中下三角部分的元素存入一维数组B[]中,A[0][0]存入B[0]中,则A[8][5]在B[]中( )位置。
以下选项中合法的用户标识符是
随机试题
德国拜尔药厂生产的阿司匹林自投入市场以后,价格虽然高,但因药效好,虽未投入大量广告费用,但也一直很畅销。该公司采用的导入期营销策略是()
A.急性单纯性胆囊炎B.胆囊结石经常发作C.胆道蛔虫病D.急性梗阻性化脓性胆管炎E.肝内胆管结石临床表现为肝不对称性肿大,肝区有压痛和叩击痛的是
犬静脉穿刺最常用的血管是
A.细胞水肿B.脂质沉积C.结缔组织玻璃样变D.血管壁玻璃样变E.细胞内玻璃样变肝细胞气球样变
妊娠10周后,雌激素的主要来源是
安全标志主要包括()等。
根据有关法律法规规定,输入动植物、动植物产品和其他检疫物,应当在( )实施检疫。未经检验检疫机构同意,不得卸离运输工具。
下列关于国家助学贷款偿还的说法,错误的是()。
小明、小红、小东、小刚四人玩游戏,其中某人不小心打碎了教室的玻璃,老师来询问情况时,小红说:“是小刚干的。”小东说:“是小红干的。”小明说:“不是我干的。”小刚说:“小红诬告我。”如果四人中只有一人说了假话,那么,不小心打碎玻璃的是()。
中国教育最终完成从传统教育到资产阶级新教育的转变是在什么时期?()
最新回复
(
0
)