首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的输出结果是【 】。 #include <iostream> using namespace std; class A { int a; public: A():a(9){} virtu
下列程序的输出结果是【 】。 #include <iostream> using namespace std; class A { int a; public: A():a(9){} virtu
admin
2013-05-30
52
问题
下列程序的输出结果是【 】。
#include <iostream>
using namespace std;
class A {
int a;
public:
A():a(9){}
virtual void print() const { cout<<a;};
};
class B: public A {
char b;
public:
B( ){b=’S’;}
void print() const {cout<<b;}
};
void show(A &x){ x.print0;}
int main()
{ Ad1,*p;
B d2;
p=&d2;
d1.print();
d2.print0;
p->print();
show(d1);
show(d2);
return 0;}
选项
答案
9SS9S
解析
本题主要考查虚函数的运用。在主函数中,首先通过基类对象d1调用print()函数,即调用基类的print()函数,输出一个9。然后通过派生类对象d2调用print()函数,即调用派生类的print()函数,输出一个’S’。接下来通过基类指针p调用print()函数,p此时指向的是派生类对象,而print()函数是虚函数,根据选择题(35)的解析,此时调用的是派生类的print()函数,输出一个’S’。然后,将基类对象d1传递给 show()函数,show()函数通过基类类型引用形参x调用print()函数,此时调用基类的 print()函数,输出一个’9’。最后,将派生类对象d2传递给show()函数,此时show()函数中通过基类类型引用x调用派生类对象d2的print()函数,根据虚函数的性质,应该调用的是派生类的print()函数,输出一个’S’。故最终输出的结果是:9SS9S。
转载请注明原文地址:https://kaotiyun.com/show/bTNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
输出流文件中的当前位置可以由下面哪个成员函数返回______。
下面程序的输出结果是【】。#defineMIN(a,b)(((a)<(b))?a:b)#include<iostream.h>voidmain(){intx=3,y=5;cout<<MIN(x,y)<<end1;}
下列关于构造函数的描述中,错误的是()。
下列函数的定义,正确的是()。
下列选项中,不属于模块间耦合的是()。
模板是实现类属机制的一种工具,其功能非常强大,它允许用户构造类属类,即()。
软件工程的出现是由于()。
一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为()。
如果要在类的对象上使用运算符,除了运算符=和【】以外,其它的必须都要被重载。
编译时的多态性可以通过使用()获得。
随机试题
编辑小郑需要对一篇有关财务软件应用的书稿“Word素材.docx”进行排版,请按下列要求完成书稿编排工作。将考生文件夹下的图片“Tulips.jpg”设置为本文稿的水印,水印处于书稿页面的中间位置、图片增加“冲蚀”效果。
20Cr13是()型不锈钢。
心理学研究中实验者操纵的刺激条件或实验条件称为【】
不是儿童剂量的计算方法的是
下列选项中,属于个人消费类贷款的有()。
0,1,l,2,4,7,13,()。
扩展名为.pjx的文件是
Anthony’s______expressionmaskedanessentialcheerfulnature.
Whichofthefollowingstatementsistrueaccordingtowhatyouhear?
Islanguage,asfood,abasichumanneed?Judging(1)______fromthedrasticexperimentofFrederickIIinthe13thcenturyit
最新回复
(
0
)