首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了多个类,其中定义的类并不完整,按照要求完成下列 操作,将类的定义补充完整;使其输出如下: TC2 TC3 TC1 (1)类TC2公共继承于TC1,请在注释1后
用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了多个类,其中定义的类并不完整,按照要求完成下列 操作,将类的定义补充完整;使其输出如下: TC2 TC3 TC1 (1)类TC2公共继承于TC1,请在注释1后
admin
2013-11-15
68
问题
用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了多个类,其中定义的类并不完整,按照要求完成下列
操作,将类的定义补充完整;使其输出如下:
TC2
TC3
TC1
(1)类TC2公共继承于TC1,请在注释1后添加适当的语句。
(2)print函数为虚函数,请在注释2后添加适当的语句。
(3)修改语句,使得p指定对象obj3,请在注释3后添加适当的语句。
(4)修改语句,利用p调用print函数,完成输出信息,在注释4后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
试题程序:
#include(iostream)
using namespace std;
class TC1
{
public:
void print()
{
cout<<"TC1"<
}
};
//* * * * * * * * 1 * * * * * * * *
class TC2
{
public:
//* * * * * * * * 2 * * * * * * * *
void print()
{
cout<<"TC2"<
}
};
class TC3:public TC2
{
public:
void print()
{
cout<<"TC3"<
}
};
int main()
{
TC2 obj2;
TC3 obj3;
TC1*p;
obj2.print();
obj3.print();
//* * * * * * * * 3 * * * * * * * *
p:obj3;
//* * * * * * * * 4 * * * * * * * *
p.print();
return 0;
}
选项
答案
(1)将“class TC2”补充完整为“class TC2:public TC1”。 (2)将“void print()补充完整为“virtual void print()”。 (3)将“p=obj3;”修改为“p=&obj3;”。 (4)将“p.print();”修改为“p->print();”。
解析
本题中第1处要求“类TC2公共继承于TC1”。从已有的类产生一个新的子类,成为类的派生。声明派生类的一般形式为“class派生类名:[继承方式]基类名”。根据题目中的要求以及派生类的.般形式,在第1处添加语句“class TC2:public TC1”。
第2处要求“Print函数为虚函数”。在C++中,用virtual声明的函数为虚函数,因此第2处的语句应修改为“Virtual void print()”。
第3处要求“使得P指定对象obj3”。p为指针变量,obj3为类的对象,将一个指针变量指向另一个变量,只要把被指向的变量的地址赋给指针变量即可。取对象obj3地址的语句为&obj3,所以这里补全语句为“p=&obj3;”。
第4处要求“利用p调用print()函数”。C++中用“-”运算符实现成员访问,因此调用print函数,应将第4处的语句修改
转载请注明原文地址:https://kaotiyun.com/show/wHNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出结果是()。#include<iostream>usingnamespacestd;voidmain(){inta,b;for(a=1,b=l;a<=100;
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是()。
【】是精确定义的一系列规则,它指出怎样从给定的输入信息经过有限步骤产生所求的输出信息。
一个类的友元函数或友元类能够通过成员操作符访问该类的()。
下面程序运行后输出的结果是【】。#include<iostream>usingnamespacestd;classexample{constintm;public:example(inti)
分析下面程序,该程序的运行结果是()。#include<iostream.h>classcmm{public:staticintm;cmm(){m++;}cmm(
定义如下一维数组:inta[5],*p;,则下列描述错误的是()。
在下面的运算符重载函数的原型中,错误的是()。
使用fstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为()。
下列语句中,错误的是()。
随机试题
检验真理的唯一标准是【】
Collegewasthebestoftimesandtheworstoftimesforme.Ihad【C1】______experienceswithmybestfriends,butIalsofolded
甲饮料厂生产一种新型饮料“碧水蓝天”,由于其口味独特,且包装新颖,得到青少年的宠爱,在市场上十分走俏。该厂资料复印人员李某利用工作之便,复印了数份该饮料的技术资料。恰逢乙饮料厂想生产这种新饮料,苦于该饮料制造工艺复杂而无法掌握。李某得知后,与乙厂取得联系,
下列固定资产中,()属于应征房产税。
处置持有至到期投资时,应将实际收到的金额与其账面价值的差额计入公允价值变动损益。()
已知全集U={0,1,2,3,4,5,6,7,8},集合M={0,1,2,3,5,6,7},集合N={0,2,4,5,6},则(M)∪(N)=().
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
广义的学习是指()
《中华人民共和国民法通则》第二十三条规定:“公民有下列情形之一的,利害关系人可以向人民法院申请宣告他死亡:(一)下落不明满四年的;(二)因意外事故下落不明,从事故发生之日起满二年的。战争期间下落不明的,下落不明的时间从战争结束之日起计算。”试分析该条法律规
Whydidthemengettosleepsolate?
最新回复
(
0
)