首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了多个类,但类不能达到输出要求,按照定义的输出修改函数,使得输出如下: TestClass3 TestClass2 TestClass1 其中定义的类并不完整,
用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了多个类,但类不能达到输出要求,按照定义的输出修改函数,使得输出如下: TestClass3 TestClass2 TestClass1 其中定义的类并不完整,
admin
2017-11-28
49
问题
用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了多个类,但类不能达到输出要求,按照定义的输出修改函数,使得输出如下:
TestClass3
TestClass2
TestClass1
其中定义的类并不完整,按照要求完成下列操作,将类的定义补充完整。
(1)类TestClass2公共继承于TestClass1,请在注释********1********后添加适当的语句。
(2)print函数为虚函数,请在注释//********2********后添加适当的语句。
(3)修改语句,使得p指定对象obj3,请在注释//********3********后添加适当的语句。
(4)修改语句,利用p调用print()函数,完成输出信息,注释//********4********后添加适当的语句。
注意:仅在函数指定位置添加语句,请勿改动主函数main与其他函数中的任何内容。
#include<iostream>
using namespace std;
class TestClass1
{
public:
void print(){
tout<<<’’TestClass’’’<<endl;
}
};
//********1********
class TestClass2
{
public:
//********2********
void print()
{
tout<<’’TestClass2’’<<endl;
}
};
class TestClass3:public TestClass2
{
public:
void print()
{
cout<<’’TestClass3’’<<endl;
}
};
int main()
{
TestClass2 obj2;
TestClass3 obj3;
TestClass1*p;
obj2.print();
obj3.print();
//********3********
p=obj3;
//********4********
p.print();
return ();
}
选项
答案
(1)将“class TestClass2”补充完整为:class TestClass2:public TestClass1 (2)将“void print()”补充完整为:virtual void print() (3)将“p=obi3;”修改为:p=&obj3; (4)将“p.print();”修改为:p->print();
解析
(1)题目1要求“类TestClass2公共继承于。TestClass1”。从已有的类产生一个新的子类,成为类的派生。声明派生类的一般形式为{class派生类名:[继承方式]基类名。根据题目中的要求以及派生类的一般形式,第1个标识下添加语句“class TestClass2:publicTestClass1”。
(2)题目2要求“print函数为虚函数”。在C++中,用virtual声明的函数为虚函数,因此第2个标识下的语句修改为“virtualvoid print()”。
(3)题目3要求“使得p指定对象obj3”。p为指针变量,obj3为类的对象,将一个指针变量指向另一个变量,只要把被指向的变量的地址赋给指针变量即可。取对象0bj3地址的语句为&obj3,所以这里补全“p=&obj3;”。
(4)题目4要求“利用p调用print()函数”。C++中用”->”运算符实现成员访问,因此调用print()函数,应将第4个标识下修改为“p->print();”。
转载请注明原文地址:https://kaotiyun.com/show/7tAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是( )。 #include<iostream> using namespace std; int main() { char a[]="Hello,Test"; char *p=a; whil
软件生命周期分为软件定义期、软件开发期和软件维护期,详细设计属于______中的一个阶段。
在下列函数原型中,可以作为类AA构造函数的是()。
有函数模板声明和一些变量定义如下:templateT1sum(T2,T3);doubled1,d2;则下列调用中,错误的是
如下程序的输出结果是main(){inta=2,b=-1,c=2;if(a<B)if(b<0)c=0elsec++;cout<<c<<endl;}
请在下列程序的横线处填写正确的语句。#include<iostream>usingnamespacestd;classBase{public:voidfun(){cout<<
以下关于C++语言类的说法中正确的是
按照“先进后出”原则组织数据的数据结构是()。
软件需求分析阶段的工作,可以分为4个方面:需求获取、需求分析、编写需求规格说明书以及()。
用树结构表示实体类型及实体间联系的数据模型称为______。
随机试题
下列选项中,属于服务商标的是()
判断膀胱破裂的简便方法是
下列项目中,属于会计估计变更的是()。
A公司为上市公司,拟进行破产重整。2015年10月,当地法院批准了公司的重整计划,对于普通债权按照12%的份额以现金清偿,随即A公司按法院裁定进行破产债务重整,截至2016年1月10日,A公司已经清偿了所有应以现金清偿的债务;截至2016年4月10日,应清
CIDR.使用“斜线记法”,它又称为CIDR记法,即在IP地址面加上一个斜线“/”,然后写上网络前缀所占的位数(这个数值对应于三级编址中子网掩码中1的个数)。()
排球比赛中后排队员完成拦网或参加了完成拦网的集体,即为()犯规。
用以传达要求下级机关办理和需要有关单位周知或者执行事项的公文是()。
下列选项中,表述正确的是()。
C
A、Itmadesome3DTVprograms.B、Itmademoreinterestingmovies.C、Itmadesome3Dmovies.D、Itsoldticketsatlowerprices.C
最新回复
(
0
)