首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
admin
2017-03-22
27
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
程序输出结果如下:
10
5
10 5 7
(1)定义类baseA的构造函数,该构造函数有一个整型的参数m,在构造函数中请将m赋值给数据成员a。请在注释“//********1********”之后添加适当的语句。
(2)定义类priA1的构造函数,该构造函数有两个整型的参数m和n,在构造函数中请将m赋值给数据成员b,将n作为基类baseA构造函数的参数值传入。请在注释“//********2********”之后添加适当的语句。
(3)定义类priA2的构造函数,该构造函数有三个整型的参数m,n和k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类研A1构造函数的参数m和n。请在注释“//********3********”之后添加适当的语句。
(4)完成类priA2的成员函数Show的定义,该函数调用基类成员函数,输出基类私有成员a和b及类priA2自身的数据成员C的值,上述三个值在输出时以空格隔开。请在注释“//********4********”之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
Class baseA
{
int a;
public:
//********1********
int geta(){return a;)
};
class priAl:public baseA
{
int b;
public:
//********2********
int getb(){return b;)
};
class priA2:public priAl
{
int c;
public:
//********3********
Void show()
{
//********4********
}
};
Void main()
{
priA2 a(7,5,10);
cout<
cout<
a.show();
}
选项
答案
(1)添加语句:baseA(int m){ a=m;) (2)添加语句: priA1(int m,int n):baseA(n){b=m;) (3)添加语句:priA2(int m,int n,int k):priA1(n,k) {c=m;) (4)添加语句: cout<
解析
(1)根据题目1要示,构造函数函数名和类名一致,显然baseA构造函数名为baseA(),在baseA0qb通过参数in完成对成员变量a的赋值,因此构造函数名为baseA(int m),在函数内部对成员a赋值,故第1个标识下应添加“baseA(int m){a=m;}”。
(2)根据题目2要示,构造函数形式为priA1(int m,int n),m赋值给priA1类成员b,将n作为基类baseA构造函数的参数值传入,故第2个标识下应添加“priA1(int m,int n):baseA(n){b=m;}”。
(3)根据题目3要示,函数形式为priA2(int m,intn,int k),在构造函数中将m赋值给数据成员c,将n和k分别赋值给基类priA1构造函数的参数m和n,因此第3个标识下应添加“priA2(int m,int n,intk):priAl(n,k){c=m;}”。
(4)根据题目4要示,priA2类公有派生于priA1,而研A1公有派生于baseA,因此在priA2类中可以调用基类的geta()和getb()来获得基类私有成员a和b,再输出priA2的私有成员C即满足要求,因此第4个标识下应添加“cout<
转载请注明原文地址:https://kaotiyun.com/show/F9Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有以下程序#include<iostream>usingnamespacestd;classA{private:inta;public:
下列语句段将输出字符’*’的个数为inti=100;while(1){i--;if(i==0)break;cout,,’*’;}
数据库设计包括两个方面的设计内容,它们是
虚函数必须是类的【】。
下面程序的运行结果是【】。#include<iostream>usingnamespacestd;classcount{staticintn;public:
如果表达式x*y+z中,“*”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为
下面程序的结果是#include<iostream.h>classA{inta;public:A():a(1){}
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3;int*v4;};其中有一个成员变量的定义是错误的,这个变量是
请将下面的类Date的定义补充完整,使得由语句:DateFirstDay;定义的对象FirstDay的值为2010年1月1日。classDate{public:Date(______):year(y),month(
随机试题
不管他说什么你都不要相信他。(nomatter)
孕妇在什么时期感染风疹病毒,胎儿患先天性风疹综合征的发病率最高
休克患者在补充足够液体后,血压偏低,中心静脉压正常,应给予
上海证券交易所上市证券发放现金红利时,未办理指定交易的A股投资者的现金红利暂由中国证券登记结算有限责任公司上海分公司保管,按当前活期利率计息。()
商务谈判中,化整为零策略的特点是()。
下列不属于普通高中美术课程作用的是()。
简述运用讲授法的基本要求。
某俱乐部大厅门口贴着一张通知:欢迎加入俱乐部!只要你愿意,并且通过推理取得一张申请表,就可以获得会员资格了!走进大厅看到左右各有一个箱子,左边的箱子上写着一句话:“申请表不在此箱中。”右边的箱子上也写着一句话:“这两句话中只有一句话是真的。”假设介入
TheimportantdistinctionbetweentheexternalfinancialmarketandthedomesticfinancialmarketliesinthatEurocurrencybank
Languagecanrefertothingsthatarenotpresentintheimmediatesituationofthespeaker.Forexample,ifsomeonesaysIwas
最新回复
(
0
)