首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
有如下程序: #include using namespace std; class Shape{ //图形类 public: //图形绘制函数(用显示字母模拟) virtual
admin
2021-06-10
83
问题
有如下程序:
#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://kaotiyun.com/show/Jrfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下语句序列:charstr[10];cin>>str;当从键盘输入“Ilovethisgame”时,str中的字符串是()。
下列有关类成员的叙述中,错误的是
有如下类定义:classMyClass{public:private:intdata;}:若要为MyClass类重载流输入运算符“>>”,使得程序中可以“cin>>obj;”的形式改
从工程管理角度,软件设计一般分为两步完成,它们是()。
下列有关指针的用法中,错误的是()。
下列结构体类型说明和变量定义中正确的是()。
下列关于模板的叙述中,正确的是()。
下面描述中正确的是
下列叙述中正确的是()。
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是()。
随机试题
根据《标准施工招标文件》的规定,下列合同事件中,承包商可以索赔工期、费用和合理利润的有()。
高二(3)班的一些学生因热爱打篮球,自发组织成立了篮球运动小组,并约定在每周五放学后进行篮球比赛,以提高打篮球的水平。这种群体组织属于()。
凉膈散的组成包括下列何方
下列纠纷中,不可以以仲裁方式解决的是()
A公司销售给B公司一批库存商品,A公司收到B公司签发的商业承兑汇票,面值为825万元。到期日由于B公司发生财务困难,不能如期偿还。经协商,双方达成了债务重组协议。A公司同意将此债务延期1年,并按8%的利率(与实际利率相同)计算延期1年的利息,债务本金减到7
X公司主要从事某种化工产品的生产与销售,其主要产品包括A产品、B产品和其他产品。A注册会计师受托担任X公司2015年度财务报表审计业务的项目合伙人。资料一:A注册会计师在审计工作底稿中记录了所了解的X公司情况及其环境,部分内容摘录如下:(1)
商鞅变法是战国时期著名的变法活动之一。在商鞅变法中,将全国的行政权及兵权集中到朝廷,标志着秦国中央集权的国家政体确立的内容是()。
王某去世后留下一笔遗产,下列都健在的近亲属中,不享有继承权的是()。
某工厂接到制造6000个A种零件、2000个B种零件的订货单,该厂共224名工人,每人制造5个A种零件与制造3个B种零件所用时间相同。现把全厂工人分成甲、乙两组分别制造A、B零件,并同时开始投入生产。两组各分配多少人才能使完成订货单任务所用的时间最少?
在命令窗口中,打印报表YYl可使用的命令是
最新回复
(
0
)