首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
admin
2020-06-29
57
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1********后添加适当的语句。
(2)类CPri是CBase的公共继承类,请在注释//********2********后添加适当的语句。
(3)类CPri构造函数有两个形式参数,第一个是对CBase的初始化,第二个缺省为0,用来对变量Number2进行初始化。请在注释//********3********后添加适当的语句。
(4)类CPri的函数display()重载于CBase的打印函数。完成对变量Number2的输出,然后调用基类的打印函数,请在注释//********4********后添加适当的语句。输出的内容如下:
Number2=12
Number=8
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include
2 C1ass CBase
3 {
4 private:
5 int Number;
6 public:
7 //********1********
8 CBase(int X)
9 {}
1 0 void display()
11 {
12 cout<<"Number="<
13 }
14 };
15 //********2********
16 class CPri
17 {
18 private:
19 int Number2 ;
20 public:
21 //********3********
22 CPri(int x,int y=0)
23 {
24 Number2=yj
25 )
26 void display()
27 {
28 //********4********
29
30 }
31 };
32 int main()f
3 3 CPri obj(8,12);
34 obj.display();
35 return 0 ;
36 }
选项
答案
(1)将“CBase(int x)”补充完整为:CBase(intx):Number(x) (2)将“class CPri”补充完整为:class CPri:public CBase (3)将“CPri(intx,inty=0)”补充完整为:Cpri(intx,int y=0): CBase(x) (4)添加语句: cout<<"Nutuber2="<
解析
程序中定义了类CBase和类CPri,类CPri公有派生于类CBase,CBase中有成员变量Number,CPri有成员变量Number2,两个类均有display()~数来打印成员变量的值。
[解题思路]
(1)构造函数完成类成员变量的初始化,第1个标识下是对Numberl初始化,带参数的构造函数初始化有多种方式,可以在函数体内完成初始化,或利用参数初始化表来完成初始化,显然这里不能在函数体完成初始化,只能是在函数首部实现对数据成员的初始化,因此只能通过参数初始化表来完成,这种方法不在函数体内对数据成员初始化,而是在函数首部实现,即第1个标识下应改为“CBase(int x1:Number(x)”。
(2)第2标识下是声明类CPri,且类CPri是CBase的公共继承类,定义派生类的一般格式为:
class<派生类名>:<继承方式1><基类名1>。
<继承方式2><基类名2>,
<继承方式n><基类名n>
{
<派生类新定义成员>
};
类CPri是CBase的公共继承类,因此第2个标识下应改为“class CPri:public CBase”。
(3)CPri构造函数有两个形式参数,第一个是对CBase的初始化,第二个缺省为0,用来对变量Number2进行初始化,这里对CBase的初始化也不能在函数体内完成,因此也必须采用参数初始化表来完成,即第3个标识下应改为“CPri(int x,int y=0):CBase(x)”,调用CBase的构造函数完成对CBase的初始化。
(4)函数display()重载于CBase的打印函数。完成对变量Number2的输出,然后调用基类的打印函数display(),基类的display()和派生类的display()重名,调用基类的display()应过类名来直接调用,即第4个标识下应添加“cout<<”Number2=”<
转载请注明原文地址:https://kaotiyun.com/show/7K8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为:a=7,b=0a=8,b=10注意:错误的语句在//********error********的下面
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。其中:定义了类circle和column,column类由circle类protected派生,但是两个类的定义并不完整,请按
下列关于栈叙述正确的是( )。
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3,*v4;};其中定义错误的成员变量是
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:1,2,3,4,5,注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在********error
下面描述中不属于软件需求分析阶段任务的是
设二叉树如下:则后序序列为
对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是( )。
在数据处理中,其处理的最小单位是()。
随机试题
某医院要建立微生物实验室,其无菌间需配备设备,请问。该设备的主要作用
注册房地产经纪人脱离房地产经纪工作岗位连续()以上的,由原注册机构注销注册。
基金公司会员部成立于()年。
下列各项关于现金折扣会计处理的表述中,正确的是()。
民族管弦乐器分为()。
纳米技术即微电子技术,它是20世纪90年代初迅速发展起来的新兴科技。()
系列位置效应常被看做是支持短时存储不同于长时存储的有效证据,可通过对单词等的自由回忆测验获得。如果改变单词频率、单词呈现速度、单词系列长度,对系列位置效应最有可能造成的影响是
下列关于管制的表述正确的是()。
TripReportsManycompaniesrequiretheiremployeestohandinreportsoftheirbusinesstrips.Atripreportnotonlyprovid
Incaseofsomethingunexpected,itisadvisableto______yourlifeagainstaccident.
最新回复
(
0
)