首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
admin
2015-07-22
28
问题
有如下程序:
#include
using namespace std;
class Shape{ //图形类
public:
//图形绘制函数(用显示字母模拟)
virtual void draw()const{ cout<<’S’; }
};
class Circle: public Shape{ //圆形类
public:
void draw()const{ cout<<’C’; }
};
void plot(Shape &s){ s.draw(); }
int main(){
Shape *ps=new Circle;
Circle t;
ps->draw();
t.draw();
plot(t);
delete ps;
return 0;
}
运行这个程序的输出是
选项
A、SCC
B、SCS
C、CSS
D、CCC
答案
D
解析
C++中,多态性调用需要满足两个条件,1、被调用成员函数必须是虚函数;2、必须通过基类类型的引用或指针进行函数调用。多态性使程序在运行时期根据指针或引用所指对象的类型来决定调用哪个函数。
程序中,类Shape定义了虚函数draw(),在派生类Circle中重写了函数draw();main函数中,分别使用指针、对象、引用三种方式调用函数draw(),指针ps是基类指针,指向的是派生类的对象,所以这里根据多态性,将调用Circle中的draw函数,输出"C";对象t是Circle对象,也调用Circle中的draw函数,输出"C";函数plot()执行时引用s引用的是实参t,引用对象是派生类Circle对象,根据多态性,同样调用Circle中的draw函数,输出"C";结果输出为"CCC";答案为D。
转载请注明原文地址:https://jikaoti.com/ti/RAE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
将E-R图转换到关系模式时,实体与联系都可以表示成
在面向对象的程序设计中,下列叙述中错误的是
设在主函数中有以下定义和函数调用语句,且fun()函数为void类型,请写出fun()函数的首部【】。intmain(){doubles[10][22];intn;fun(s);re
下面程序的运行结果是【】。#inChlde<iOStream>usingnamespacestd;classcount{staticintn;public:count()
对如下二叉树进行后序遍历的结果为
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classDerived:
某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为
类模板template<classT>classx(…),其中,友元函数f成为从该类模板实例化的每个模板类的友元,则其说明应为()。
如果一个模板声明列出了多个参数,则每个参数之间必须使用逗号隔开,每个参数都必须重复使用关键字()。
随机试题
精子原地打转,活动迟钝,应属于哪一级
Pratt试验可了解
flamesterization
患者男,54岁。糖尿病病史3年,坚持晨跑,血糖控制良好。长时间运动后血糖的变化
下列有关物种差异对毒物代谢转化影响的陈述中,正确的是()
我国对进出口货物计征关税主要采用__________作为计征标准。
案例九:杨先生供职于A公司。公司有两套薪酬方案:甲方案:员工每月工资3500元。乙方案:由公司替员工支付房租,员工每月工资降为2450元。假设员工每月房租平均为1050元。根据案例九,回答下列题目:采用乙方案比采用甲方案可多获得( )元的净收
《金融资产管理公司条例》第三条规定,金融资产管理公司以最大限度地( )为主要经营目标,依法独立承担民事责任。
岗位分析的首要工作是收集和研究该组织的全部资料,为了达到这个目的,分析者常常在开始工作时要根据()进行分析。
“总数为N=500,样本容量是n=50,求出间隔500÷50=l0,于是每隔10个抽取一个样本,连续抽样50次。”这是采用()。
最新回复
(
0
)