首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)类CBase有一个常数变量Numberl,在构造函数时对其初始化,请在注释//********1*****
admin
2020-06-29
69
问题
使用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,该程序运行时有错,请改正其中的错误,使程序正常运行,即使程序在界面输出以下类似内容:0012FF6810012FF3C50012FF6C20012FF444
请使用“答题”菜单或使用VC6打开考生文件夹下proj3下的工程proj3,其中声明了Matrix类,是一个用于表示矩阵的类。operator+的功能是实现两个矩阵的加法运算。例如,若有两个3行3列的矩阵则A与B相加的和为请编写operator函数
数据库应用系统中的核心问题是( )。
下列关于运算符重载的叙述中,正确的是
某系统总体结构图如下图所示:该系统总体结构图的深度是( )。
某二叉树的前序序列为ABCD,中序序列为DCBA,则后序序列为
某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为
已知数组arr的定义如下:intarr[5]={1,2,3,4,5};下列语句中输出结果不是5的是
算法的空间复杂度是指( )。
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有矩阵基类MatrixBase、矩阵类Matrix和单位阵UnitMatrix的定义,还有main函数的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输
随机试题
试论述教育评估与教育评比、教育测量的异同。
甘特图,也称为条状图,是在1917年由__________开发的,其内在思想较为简单,即以图示的方式通过活动列表和时间刻度,形象地表示出任何特定项目的活动顺序与持续时间。
维生素D缺乏可引起手足搐搦症主要是由于
土石坝非圆弧滑动抗滑稳定分析方法有()。
某土石方工程实行混合计价。其中土方工程实行总价包干,包干价14万元;石方工程实行单价合同。该工程有关工程量和价格资料如下表。则该工程结算价款为()万元。
根据《导游人员管理实施办法》的规定,一次被扣除6分的情形是()。
难度与区分度的关系,一般来说,较难的项目对高水平的被试者区分度(),中等难度的项目对中等水平的被试者区分度高。
某巡逻民警在晚间巡逻时,发现一名衣着考究的男子用石块砸碎一辆汽车驾驶座一侧的玻璃,然后进入车内,身后一名妇女也随后进入车内。此时,假设你就是巡逻民警,你认为下列最恰当的做法是()。(2017年辽宁.单选40)
某公司去年有员工830人,今年男员工人数比去年减少6%,女员工人数比去年增加5%,员工总数比去年增加3人,问今年男员工有多少人?
StandingontherimoftheGrandCanyon(大峡谷),gazingacrossthisgiantwouldintheEarth’ssurface,avisitormightassumethat
最新回复
(
0
)