首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
admin
2020-06-29
32
问题
使用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打开考生文件夹下的源程序文件modi3.cpp,其中定义了多个类,但类不能达到输出要求,按照定义的输出修改函数,使得输出如下:11estClass3TestClass2TestClass1其中定义的类并不完整
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数show()的功能是将1、2、3、4四个数字,组成互不相同且无重复数字的四位数,并将这些数输出到屏幕,输出的内容如下:12341243132413421
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数MergeAndSort(ints[],inte[],inta[],intm,intn)实现将两个数组合并。这两个数组已经有序,按照由小到大的顺序排列。
有如下程序:#includeusingnamespacestd;intmain(){inta[6]={27,57,20,42,56,18};int
执行语句序列intn=0;for(inti=60;i>0;i-=3)n++;之后,变量n的值是
数据库设计中反映用户对数据要求的模式是( )。
在下列选项中,不允许作为C++标识符的是
在黑盒测试方法中,设计测试用例的主要根据是( )。
在软件开发中,需求分析阶段产生的主要文档是( )。
随机试题
调查人群龋病流行情况的分组不包括
有关肝炎病毒血清学标志物的描述,下列不正确的是
在招标采购工作协调管理中,()限制了项目组织的选择范围。
李某与合伙企业“大木采石场”各出资50元组建了一家具有独立法人资格的大木有限责任公司,经营建筑材料,聘请营销专家陈某担任经理。这里谁负“有限责任”?()
1945年日本战败投降后,依据哪两个文件规定,钓鱼岛应作为台湾附属岛屿归还中国?()
以下列举的情况,不是必然导致法律责任的是()
根据我国刑法的规定,对于犯罪的外国人,适用驱逐出境是指
Whatwasthedreamoftheearlyminers.-
A、 B、 C、 C
A、theyaresourcesofhugerevenuesB、theymayfailtosurviveforeigncompetitionC、theyarenewindustriesD、theyaresupporte
最新回复
(
0
)