首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码并删除横线,以实现上述类定义。
请打开考生文件夹下的解决方案文件proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码并删除横线,以实现上述类定义。
admin
2020-10-21
25
问题
请打开考生文件夹下的解决方案文件proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
Leaf Node
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include<iostream>
using namespace std;
class Component{
public:
//声明纯虚函数print()
//**********found**********
____________
};
class Composite:public Component{
public:
//**********found**********
void setChild(__________)
{
m_chiid=chiid;
}
virtual void print()const
{
m_chiid—>print();
}
private:
Component * m_chiid;
};
class Leaf:public Component{
public:
virtual void print()const
{
//**********found**********
___________
}
};
int main()
{
Leaf node;
Composite comp;
comp.setChiid(&node);
Component *p=∁
p—>print();
return 0;
}
选项
答案
(1)vinual void print()const=0; (2)Component * child (3)cout<<"Leaf Node"<<endl;
解析
(1)主要考查考生对纯虚函数的掌握,题目要求声明纯虚函数print()。在其派生类中print()函数的定义为virtual void print()const,由此可知纯虚函数为virtual void print()const=0。
(2)主要考查考生对成员函数的掌握,题目要求填写函数void setChild的形参,由setChild的函数体可知形参为child,再看类的私有成员m_child的定义:Component * m_child;。由此可知形参为:Component * child。
(3)主要考查考生对纯虚函数的掌握,先看主函数的程序:
Leaf node;
Composite comp;
comp.setChild(&node);
Component * p=∁
p—>print();
第一条和第二条语句都是定义语句,第三条语句调用函数setChild,由setChild函数的定义可知,comp中的m_child等于node,第四条语句定义了个指针p指向comp的地址,也就是node,最后一条语句通过指针p调用函数print,也就是调用类Leaf的函数print,因为题目要求输出:Leaf Node,因此在这里添加语句:cout<<"Leaf Node"<<endl;。
转载请注明原文地址:https://kaotiyun.com/show/kVyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面是重载为非成员函数的运算符的函数原型,其中错误的是()。
有3个关系R、S和T如下:则由关系R和S得到关系T的操作是()。
设数据集合为D={1,2,3,4,5}。下列数据结构B=(D,R)中为非线性结构的是()。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:1003732注意:错误的语句在//******error******的下面,修改该语句即可。#include<iostream
两个或两个以上的模块之间关联的紧密程度称为()。
下列关于派生类构造函数和析构函数的说法中,错误的是()。
下列有关内联函数的叙述中,正确的是()。
关于在调用模板函数时模板实参的使用,下列表述正确的是()。
下列()是C一+4.语言的有效标识符。
数据库管理系统中负责数据模式定义的语言是()。
随机试题
甲、乙同居多年后决定结婚并在民政局进行了登记,则下列说法正确的有()。
简要说明艺术作品中内容与形式的关系。
A.对症处理B.抗感染治疗C.剖胸探查D.气管切开术E.胸腔闭式引流术女性,42岁,车祸撞伤胸部,胸痛明显,轻度呼吸困难,胸片示右侧第6、7、8肋骨骨折,对位良好,双侧肋隔角清晰,合适的处理为
某患者,女,21岁,表现为行为与年龄、社会角色不相符合,像回到婴儿时期,此患者的心理状态被称为()
下列物质中,属于酚类的是()。
以下废水排放应执行《污水综合排放标准》的是()。
建设工程所涉及的风险因素和风险事件都很多,这就给风险识别带来很强的( )。
下列指标中,可用于衡量企业短期偿债能力的是()。
下列各句中,没有语病的一句是()。
空气透视法
最新回复
(
0
)