首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。 (1)基类People完成打印功能,定义其中的打印函数为虚函数,请在注释1后添加适当的语句。 (2)类Boy继承于Peo
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。 (1)基类People完成打印功能,定义其中的打印函数为虚函数,请在注释1后添加适当的语句。 (2)类Boy继承于Peo
admin
2020-10-21
55
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。
(1)基类People完成打印功能,定义其中的打印函数为虚函数,请在注释1后添加适当的语句。
(2)类Boy继承于People,在构造函数中设置性别为1,请在注释2后添加适当的语句。
(3)类Girl继承于People,在构造函数中设置性别为0,请在注释3后添加适当的语句。
(4)实现函数fun,用于传递不同的类型,打印出性别,请在注释4后添加适当的语句。
输出的内容如下:
Sex=Boy
Sex=Girl
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
试题程序:
#include
class People
{
public:
//********1********
void print(){}
int sex;
};
class Boy:public People
{
publict
Boy()
{
//********2********
}
void print()
{
cout<<"BOy"<
}
};
class Girl:public People
{
public:
Girl()
{
//********3********
}
void print()
{
cout<<"Girl"<
}
}
//********1********
{
cout<<"Sex=";
p.print();
}
int main()
{
Boy m;
fun(m);
Girl n:
fun(n);
return 0;
}
选项
答案
(1)将“void print(){};”补充完整为“virtual void print(){};”。 (2)应添加“sex=1;”。 (3)应添加“sex=0;”。 (4)应添加“void fun(People&p)”。
解析
第1处要求“基类People完成打印功能,定义其中的打印函数为虚函数”。虚函数是函数的一种,定义虚函数,在函数名前声明virtual就可以了,所以将第1处的“void print(){}”语句修改为“virtual void print(){}”。
第2处要求“类Boy继承于People,在构造函数中设置性别为1”。基类People中变量 sex用来存放性别,Boy继承People,所以Boy中性别的变量可以使用基类中的sex变量,设置性别为1,即“sex=1;”。
第3处要求“类Girl继承于People,在构造函数中设置性别为0”。在第3处添加语句“sex=0;”。
第4处要求“实现函数fun,用于传递不同的类型,打印出性别”。根据“p.print();”语句知道,fun函数的形参为指针p,由于它调用了基类People中的成员函数print,所以p的基类为People,即添加函数fun的定义为“void fun(People&p)”。
转载请注明原文地址:https://kaotiyun.com/show/Otyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如果派生类以protected方式继承基类,则原基类的protected成员和public成员在派生类中的访问属性分别是()。
有如下类定义:classFoo{public:Foo(intv):value(v){}//①-Foo(){}//②pnvate:Foo(){}//③intvalu
if语句的语法格式可描述为:格式1:if()或格式2:if()else关于上面的语法格式,下列表述中错误的是()。
有如下程序:#includeusingnamespacestd;classAA{intk;protected:intn;voidsetK(intk){tllis->k=k;
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
关于关键字class和typename,下列表述中正确的是()。
设有如下关系表:则下列操作中正确的是()。
冒泡排序在最坏情况下的比较次数是()。
下列关于线性链表的描述中,正确的是()。Ⅰ、只含有一个指针域来存放下一个元素地址Ⅱ、指针域中的指针用于指向该结点的前一个或后一个结点(即前件或后件)Ⅲ、结点由两部分组成:数据域和指针域。
某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)()。
随机试题
适宜采用塞因塞用法治疗的是
急性链球菌感染后肾小球肾炎时,与肾小球滤过率降低无关的是()
为什么要对压力容器进行常规检验?压力容器常规检验分哪几类?
(2015年)甲公司为增值税一般纳税人,主要生产和销售洗衣机。2014年3月有关经济业务如下:(1)购进一批原材料,取得增值税专用发票上注明的税额为272000元;支付运输费,取得增值税专用发票上注明税额2750元。(2)购进低值易耗品,取得增值税普通
在下列网络协议中,()是简单邮件传输协议。
2,2,3,4,9,32,()
假定以下比率是固定值,请问可持续增长率是多少?总资产周转率=1.90销售利润率=8.1%权益乘数=1.25股利支付=30%
表达式“B=INT(A+0.5)”的功能是()。
A、Therichpeople.B、Thelocalgovernment.C、Thebuscompany.D、Thelocalgovernmentandtheparents.DWhowillpayfarthenew
A、Climbersdevelopskillsusefulinotheractivities.B、Climbershavetheopportunitytobeoutsideandenjoythescenery.C、Cli
最新回复
(
0
)