首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
admin
2015-05-30
36
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
程序输出结果如下:
10
5
10 5 7
(1)定义类baseA的构造函数,该构造函数有一个整型的参数m,在构造函数中请将m赋值给数据成员a。请在注释“//料料料料1料料料料”之后添加适当的语句。
(2)定义类priAl的构造函数,该构造函数有两个整型的参数m和n,在构造函数中请将m赋值给数据成员b,将n作为基类baseA构造函数的参数值传入。请在注释“//********2********"之后添加适当的语句。
(3)定义类priA2的构造函数,该构造函数有三个整型的参数m,n和k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类priAl构造函数的参数m和n。请在注释“//********3********之后添加适当的语句。
(4)完成类priA2的成员函数show的定义,该函数调用基类成员函数,输出基类私有成员a和b及类priA2自身的数据成员C的值,上述三个值在输出时以空格隔开。请在注释“//********4********“之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include
2 class baSeA
3 {
4 int a ;
5 public:
6 //********1********
7
8 int geta(){return a ;)
9 };
10 class priAl:public baseA
11 {
12 int b ;
13 public:
14 //********2********
15
16 int getb(){return b ;)
17 };
18 class priA2:public priAl
19 {
20 int C;
21 public:
22 //********3********
23
24 void show()
25 {
26 //********4********
27
28 }
29 } ;
30 void main()
31 {
32 priA2 a(7,5,1 0);
33 cout<
34 cout<
35 a.show();
36 }
选项
答案
(1)添加语句:baseA(int m){ a=m;) (2)添加语句:priAl(int m,int n):baseA(n){b=m;) (3)添加语句:priA2(int m,int n,int k):priAl(n,k){c=m;) (4)添加语句:cout<
解析
程序当中定义了类baseA、priAl和priA2,其中priAl类由baseA类公有派生,priA2类由priAl类公有派生。构造函数是类的一种特殊的成员函数,其函数名和类名一致。构造函数可以带参数也可以不带参数,带参数的构造函数根据构造函数内部赋值语句可知其参数形式。公有派生类可以访问基类的公有成员,因此priA2类可以调用类baseA的geta()函数和priAl类的getb0函数,通过调用这两个函数得到基类私有成员a和b。
[解题思路]
(1)根据题目l要示,构造函数函数名和类名一致,显然baseA构造函数名为baseAO,在baseAOOO通过参数m完成对成员变量a的赋值,因此构造函数名为baseA(int m),在函数内部对成员a赋值,故第1个标识下应添加“baseA(int m){a=m;)”。
(2)根据题目2要示,构造函数形式为priAl(int m,int11),m赋值给priAl类成员b,将11作为基类baseA构造函数的参数值传入,故第2个标识下应添加“priAl(int m,intn):baseA(n){b=m;}”。
(3)根据题目3要示,函数形式为priA2(int m,int n,intk),在构造函数中将m赋值给数据成员c,将n和k分别赋值给基类priAl构造函数的参数m和n,因此第3个标识下应添加“priA2(int m,int n,int k):priAl(n,k){c=m;)”。
(4)根据题目4要示,priA2类公有派生于priA1,而priA1公有派生于baseA,因此在priA2类中可以调用基类的geta()和getb()来获得基类私有成员a和b,再输出priA2的私有成员C即满足要求,因此第4个标识下应添加“cout<
转载请注明原文地址:https://kaotiyun.com/show/qPNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
重载赋值操作符时,应声明为______函数
在C++中,函数原型不能标识______。
有以下类定义。classMyClass{private:intid;chargender;char*phone;public:MyClass():id(0),g
下列情况中,不会调用拷贝构造函数的是()。
下列程序的输出结果是【】。#include<iostream.h>#include<string.h>voidmain(){charb[30];strcpy(&b[0],"XY");
下面叙述错误的是()。
下列类的定义中,有()处语法错误。classBase{publiC:Base(){}Base(inti){data=i;}ptivate:
在下列概念中,不属于面向对象方法的是______。
一个项目具有一个项目主管,一个项目主管可管理多个项目。则实体集“项目主管”与实体集“项目”的联系属于【】的联系。
有关析构函数的说法不正确的是()。
随机试题
在中国延续了两千多年的封建帝制覆灭的标志是()
Thetemperatureislikelytogodownnextweek.______,wewillhavetocanceltheoutdooractivities.
郁金既能活血止痛,又能行气止痛,治疗气滞血瘀痛证,常配伍
患者,男,48岁。形体消瘦,脘腹胀痛,有时隐隐作痛,纳食不香。诊断为胃下垂,用药宜首选()
对民事诉讼法规定的督促程序,下列哪一选项是正确的?()
在上海证券交易所上市交易的某只股票,2002年末的每股税后利润为0.20元,市场利率为2.5%。根据上述内容回答下列问题。
某企业2018年3月向大气直接排放二氧化硫、氟化物各120千克,一氧化碳、氯化氢各100千克,已知:二氧化硫、氟化物、一氧化碳、氯化氢的污染当量值分别为:0.95、0.87、16.7、10.75,假设当地大气污染物每污染当量税额为3元,该企业只有一个排放口
若用户在搜狐网站上申请一个用户名为learnstudent的电子邮箱,其E-mail默认地址为________。
(1)贯彻执行(2)公布实施(3)编写草案(4)实行修改(5)现状调查
比较直接插入排序、起泡排序、简单选择排序、快速排序、堆排序、2一路归并排序和基数排序的算法性能,并填写下表:
最新回复
(
0
)