首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class A { public: virtual void f(){cout<<"1";} };
有如下程序: #include<iostream> using namespace std; class A { public: virtual void f(){cout<<"1";} };
admin
2012-01-20
33
问题
有如下程序:
#include<iostream>
using namespace std;
class A
{
public:
virtual void f(){cout<<"1";}
};
class B:public A
{
public:
B (){cout<<"2";}
};
class C:public B
{
public:
virtual void f(){B::f();cout<<"3";}
};
int main()
{
A aa,*p;
B bb;
C cc;
p=&cc;
p->f();
return 0;
}
执行上面程序的输出是______。
选项
答案
2213
解析
B bb将定义一个B型对象bb,这时需调用B的构造函数,在该构造函数中,将输出"2:;C cc将定义一个C型对象cc,这时需调用C的构造函数,面该函数为缺省构造函数,其将调用父类B的构造函数,在该构造函数中,将输出"2":由于p采用指针方式调用成员函数f,而f在基类中被声明为虚拟函数,故函数f的执行与指针p所指向对象的实际类型相一致,p指向一个C型对象cc,故执行p->f()时,将执行C的f函数,在该函数中,首先直接调用了父类B的函数f,而在B中直接继承了A类的f函数,故先要执行A的f函数,输出“1”,然后再输出“3”。
转载请注明原文地址:https://kaotiyun.com/show/fDVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若在定义语句:inta,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是()。
有以下程序:#include<stdio.h>main(){inta=1,}1=2;for(;a<8;a++){b+=a;a+=2;}printf("%d,%d\n",a,b);}程序运行后的输出结果是()。
下面关于编译预处理的命令行,正确的是
有以下程序#include<stdio.h>main(){FILE*fp;inti,a[6]={1,2,3,4,5,6},k;fp=fopen("data.dat","w+b");fwrite(&a[0
以下选项中关于程序模块化的叙述错误的是()。
定义结构体数组structStu{intnum;charname[20];)x[5]={1,"ZHAO",2,"QIAN",3,"SUN",4,"LEE",5,"ZHOU"};for(i=1;i<5;i++)printf("%d%c",x[
若有定义语句:inta=3,b=2,c=1;,以下选项中错误的赋值表达式是()。
下面程序的输出结果是()。typedefunion{longx[1];inty[4];charz[10];}M;Mt:main(){printf("%d\n",sizeo
如图所示:带有头结点的单向链表head,其三个数据结点A、B、C的连接关系见图。 结点类型的定义为: structlink { doubledt; structlink*next; }; 若指针p指向A结点,在不改
在按层次遍历二叉树的算法中,需要借助的辅助数据结构是()。
随机试题
哮证缓解期为脾气虚证者,治方最宜
施工项目的安全检查应定期进行,组织者是()。
下列关于年金的个人所得税处理中,正确的是()。
学习动机的基本结构包括学习需要和()。
唯物主义一元论同唯心主义一元论对立的根本点在于()。
根据下面材料回答下列问题。与2015年相比,HUAWEI与SAMSUNG市场占有率的差距()。
双纽线(x2+y2)2=x2一y2所围成的区域面积可表示为().
通过______接入因特网是一个部门或单位的计算机接入因特网常用的方法。
在窗体上画一个名为Command1的命令按钮。下列程序的功能是:从输入对话框输入一个正整数n。用随机函数产生n个1~100范围的随机数,然后求出去掉一个最大数和最小数的平均数。根据题意,请完善下列程序:PrivateSubCommand1_Click
Ournew______hasfourbedroomsandasittingroom.
最新回复
(
0
)