首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的输出结果是【 】。 #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
32
问题
下列程序的输出结果是【 】。
#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全国计算机二级
相关试题推荐
类是用户定义的类型,具有类类型的变量称作【】。
以下程序的输出结果是______。#include<iostream.h>voidmain(){chars1[]=”Hello”,s2[]="World";char*p1,*p2;inti
如果表达式--x中的“--”是重载的类运算符,采用运算符函数调用格式,及表达式还可以表示为【】。
执行以下程序后的输出结果为()。#include<iostream.b>classSample{intx,y;public:Sample(){x=y=0;}Sample(inta,intb)
以下程序运行后的输出结果是【】。#include<iostream.h>main(){inti=10,j=0;do{j=j+i;i--;}while(i>2);cout<<j;}
按“先进先出”原则组织数据的数据结构是【】。
磁盘文件操作中,打开文件的访问方式常量中,以追加方式打开文件的是()。
定义如下一维数组:inta[5],*p;,则下列描述错误的是()。
用链表表示线性表的优点是()。
随机试题
下列行为不构成信用卡诈骗罪的是()。
Exceptionalchildrenaredifferentinsomesignificantwayfromothersofthesameage.Forthesechildrentodeveloptotheirf
调配雄黄的处方应留存
在我国,中国证券登记结算有限责任公司作为共同对手方,与结算参与人之间进行资金的双边净额结算。()
甲股份有限公司(以下简称“甲公司”)为上市公司,2016年与2017年发生的相关交易或事项如下:(1)2016年7月30日,甲公司就应收A公司账款6000万元与A公司签订债务重组合同。合同规定:A公司以其拥有的一栋在建写字楼及持有的一项长期股权投资偿
注册会计师在对x公司银行存款进行审计时,遇到下列情况,请代为作出正确的专业判断。以下对货币资金业务内部控制制度的要求中,与银行存款无直接关系的是()。
你去办公室给领导送文件,看见领导桌上放了一封关于你的检举信,这时你怎么办?若过了一段时间领导还没有找你谈话,你认为是什么原因?你会怎么做?
A.有活性B.无活性C.两者都是D.两者都非G蛋白与GDP结合
Therearemorethan300millionofusintheU.S.,andsometimesitseemslikewe’reallfriendsonFacebook.Butthesadtruth
Breadandbutter______.likedbyWesterners.
最新回复
(
0
)