首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
admin
2021-06-10
58
问题
有如下程序:
#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/nVh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
当需要将一个函数boolisnumber(charc)声明为内联函数时,则此内联函数的函数原型为()。
下面描述中错误的是( )。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数num(char*str)实现返回字符串中非数字的个数。例如:abc123abc45返回输出:6将函数num()补充完整。注意:请
下列代码段声明了3个类classPerson{};classStudent:publicPerson{};classUndergraduate:Student{};下列关于这些类之间关系的描述中,错误的是(
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。
下列叙述中正确的是()。
设一棵完全二叉树共有700个结点,则此二叉树中的叶子结点数为
若实体A和B是一对多的联系,实体B和C是一对一的联系,则实体A和C的联系是()。
随机试题
某宾馆为了8月8日的开业庆典,于8月7日向电视台租借一台摄像机。庆典之日,工作人员不慎摔坏摄像机,宾馆决定按原价买下,以抵偿电视台的损失,遂于8月9日通过电话向电视台负责人表明此意,对方表示同意。8月15日,宾馆依约定向电视台支付了价款。根据《物权法》的规
乳香、没药的共同功效是
患者,女性,34岁。子宫内膜检查所见:腺体缩小,内膜水肿消失,螺旋小动脉痉挛性收缩,有坏死、内膜下血肿。护士根据检查结果判断该内膜为月经的
某工程双代号时标网络计划执行到第4周末和第10周末时,检查其实际进度如下图前锋线所示,检查结果表明()。
在美国的银行监管体制下,被称为功能监管者的是()。
1990年11月26日,新中国第一家证券交易所()成立。
产品的标准成本由()构成。
设α1,α2,α3均为线性方程组Ax=b的解,下列向量中α1一α2,α1一2α2+α3,(α1一α3),α1+3α2—4α3,是导出组Ax=0的解向量的个数为()
【S1】【S2】
A、Inabank.B、Inapostoffice.C、Atastop.D、Attheschoolgate.B女士问男士空运这个行李要多少钱。男士称了一下,有3磅。由此可知,男士应该是邮递公司的职员,故选B。
最新回复
(
0
)