首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。 程序输出
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。 程序输出
admin
2016-10-28
95
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了类baseA、priA1和priA2,其中priA1类由baseA类公有派生,priA2类由priA1类公有派生。上述三个类的定义并不完整,请按要求完成下列操作,将程序补充完整。
程序输出结果如下:
10
5
1057
(1)定义类baseA的构造函数,该构造函数有一个整型的参数m,在构造函数中请将m赋值给数据成员a。请在注释//********1********之后添加适当的语句。
(2)定义类priA1的构造函数,该构造函数有两个整型的参数m和i1,在构造函数中请将m赋值给数据成员b,将n作为基类baseA构造函数的参数值传入。请在注释//********2********之后添加适当的语句。
(3)定义类priA2的构造函数,该构造函数有三个整型的参数m,n和k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类priA1构造函数的参数m和n。请在注释//********3********后添加适当的语句。
(4)完成类priA2的成员函数show的定义,该函数调用基类成员函数,输出基类私有成员a和b及类priA2自身的数据成员c的值,上述三个值在输出时以空格隔开。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include<iostream.h>
class baseA
{
int a;
public:
//********1********
int geta(){return a;}
};
class priA1:public baseA
{
int b;
public:
//********2********
int getb(){return b;}
};
class priA2:public priA1
{
int c;
public:
//********3********
void show()
{
//********4********
}
};
void main()
{
priA2 a(7,5,10);
cout<<a.geta()<<endl;
cout<<a.getb()<<endl;
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<<geta()<<" "<<getb()<<" "<<C<<endl;
解析
(1)根据题目1要示,构造函数函数名和类名一致,显然baseA构造函数名为baseA(),在baseA()中通过参数m完成对成员变量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(intm,intn):baseA(n){b:m;}”。
(3)根据题目3要示,函数形式为priA2(intm,intn,intk),在构造函数中将m赋值给数据成员c,将n和k分别赋值给基类priA1构造函数的参数m和n,因此第3个标识下应添加“priA2(int m,int n,int k):priA1(n,k){c=m;}”。
(4)根据题目4要示,priA2类公有派生于priA1,而priA1公有派生于baseA,因此在priA2类中可以调用基类的getaO和getb0来获得基类私有成员a和b,再输出priA2的私有成员C即满足要求,因此第4个标识下应添加“cout<<geta0<<" "<<getb()<<" "<<c<<endl:”。
转载请注明原文地址:https://kaotiyun.com/show/8KNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。
Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。
如果一个类中定义了成员对象,则该类的对象和成员对象先被初始化的是______。
以下程序的执行结果是______。#include<iostream.h>#include<iomanip.h>voidmain(){cout.fi1(’*’);
下面这个程序的结果是#include<iostream.h>classA{private:inta;public:voidseta();intgeta();};
c++流中重载了运算符<<,它是一个
数据流程图(DFD图)是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
用符号组_______分隔两个Shell命令,只有在前一个命令执行成功后才执行后一个命令。
合金是由两种或两种以上的金属与金属或非金属经过一定方法合成的具有金属特性的物质。下列属于合金的是:
某实施监理的城市桥梁工程项目分为A、B、C3个单项工程,经有关部门批准采取公开招标的形式分别确定了3个中标人并签订了合同。A、B、C3个单项工程合同条款中有如下规定:1.A工程在施工图设计没有完成前,业主通过招标选择了一家总承包单位承包该工程的施工任务。
某企业2008年12月31日购入—台设备,入账价值为300万元,预计使用寿命为5年,预计净残值为0,采用年数总和法计提折旧。2010年12月31日该设备存在减值迹象,经测试预计可收回金额为100万元。假设该设备预计使用寿命、折旧方法和预计净残值不变,则20
一般资料:求助者,男性,46岁,会计。案例介绍:求助者半年前调入某单位任会计,开始感觉还可以,一个月前因工作失误遭领导批评,并觉得同事们开始疏远自己。从此,白天工作打不起精神,有时晚上睡不着,心情郁闷、烦躁。一周前因失眠、食欲不振去医院检查治疗,按
某地将抓到的犯罪分子进行游街示众。你怎么看?
积极强化是指用某种有吸引力的结果对某一行为进行奖励和肯定,以期在类似条件下重复这一行为。消极强化是指在行为出现时把不愉快的刺激撤销或减少,这样也可以增加行为频率。根据上述定义,下列选项属于积极强化的是:()
符合下列()情形的,纳税人应进行土地增值税的清算。
日本全面侵华战争开始的标志是()
下列指令序列执行后,AL寄存器中的内容为【 】。 MOV AL,1 SAL AL,1 MOV BL,AL SAL AL,1 SAL AL,1 ADD AL,BL
最新回复
(
0
)