首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码
admin
2017-07-04
31
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
Leaf Node
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include
using namespace std;
class Component{
public:
//声明纯虚函数print()
//********** found**********
};
class Composite:public Component{
public:
//**********found**********
void setChiid(_______)
{
m chiId=child;
}
virtual void print()const
{
m child->print();
}
private:
Component*m—child;
};
class Leaf:public Component{
public:
virtual void print()const
{
//**********found**********
}
};
int main()
{
Leaf node;
Composite comp;
comp.setChild(&node);
Component*P=∁
P->print();
return 0;
}
选项
答案
(1)virtual void print()const=0; (2)Component*child (3)cout<<”Leaf Node”<
解析
(1)主要考查考生对纯虚函数的掌握,题目要求声明纯虚函数print()。在其派生类中print()函数的定义为virtualvoid 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=&comp;
P一>print();
第一条和第二条语句都是定义语句,第三条语句调用函数setChild,由setChild函数的定义可知,comp中的m_child等于node,第四条语句定义了个指针P指向comp的地址,也就是node,最后一条语句通过指针P调用函数print,也就是调用类Leaf的函数print,因为题目要求输出:Leaf Node,因此在这里添加语句:cout<<”Leaf Node”<
转载请注明原文地址:https://kaotiyun.com/show/RLAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有下列二叉树,对此二叉树前序遍历的结果为( )。
如下程序编译时发生错误,错误的原因是show函数实现语句错误,则正确的语句应该为【 】。#include<iostream.h>classtest{private:intnum;public:test(int)voi
数据库管理最本质的特点是实现数据的共享。为了实现数据的共享,保证数据的独立性、完整性和安全性,需要有一组软件来管理数据库中的数据,处理用户对数据库的访问,这组软件称为【 】。
下列程序执行结果是 #include <iostream.h> class A { public: int a; A():a(10){cout<<a<<endl;} }; void main()
在最坏情况下,冒泡排序所需要的比较次数为
下面关于虚函数的描述中,正确的是()。
有如下数组声明:intvalue[30];下标值引用错误的是()。
重载的流运算符函数经常定义为类的______函数。
下面关于对象概念的描述中错误的是()。
以下都是C++语言标识符的是()。
随机试题
基质中最主要的成分是蛋白多糖。()
一般认为心脏骤停后脑组织对缺氧的耐受时限是
具有咸味而能泻下软坚,还有清热功效的药物是()。
图示均质圆轮,质量为m,半径为r,在铅垂图面内绕通过圆盘中心O的水平轴转动,角速度为w,角加速度为ε,此时将圆轮的惯性力系向O点简化,其惯性力主矢和惯性力主矩的大小分别为:
下列软件属于文字处理软件的是()。
实践是检验认识真理性的根本标准,这个标准是
认真阅读下列关于计算机网络防火墙的说明信息,回答问题1~5。将答案填入对应的解答栏内。[说明]某单位的内部局域网通过防火墙与外部网络的连接方式及相关的网络参数如下图所示。如果使外部所有主机不能访问内部IP地址为192.168.0.10的
计算机病毒主要破坏的对象是______。
Theexaminerasksyoutotalkaboutsomethingtogetherandgivesyouadrawingtohelpyou.
Inmanybuildingshotwater______throughpipestokeeproomswarm.
最新回复
(
0
)