首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
admin
2015-07-22
70
问题
有如下程序:
#include
using namespace std;
class A {
public:
virtual void func1() { cout<<"A1"; }
void func2() { cout<<"A2"; }
};
class B:public A {
public:
void func1() { cout<<"B1"; }
void func2() { cout<<"B2"; }
};
int main() {
A *p=new B;
p->func1();
p->func2();
delete p;
return 0;
}
执行这个程序的输出结果是( )。
选项
A、B1B2
B、A1A2
C、B1A2
D、A1B2
答案
C
解析
本题考查虚函数。虚函数指在基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数。题中定义了一个派生类对象B,并使用类A的对象指针指向B,由于基类A中的func1为虚函数,所以会执行派生类的func1,输出B1,而基类中的func2不是虚函数,所以p->func2( )会执行基类的func2,输出A2。故答案为C。
转载请注明原文地址:https://kaotiyun.com/show/drNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设置虚基类的目的是【】,通过【】表示虚基类。
关于虚函数下面说的正确的是()。
在位运算中,操作数每左移一位,其结果相当于
在数据库设计的4个阶段中,为关系模式选择存取方法(建立存取路径)的阶段是()。
只能作为成员函数重载的是
在C++中,打开一个文件就是将这个文件与一个()建立关联;关闭一个文件就取消这种关联。
下面叙述不正确的是
下列对模板的声明中,正确的是
数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及
以下哪个不是C++语言中的有效标识符()。
随机试题
定性预测是指预测者依靠熟悉业务知识、具有丰富经验和综合分析能力的人员与专家,根据已掌握的历史资料和直观材料,运用个人的经验和分析判断能力,对事物的未来发展做出性质和程度上的判断,然后,再通过一定形式综合各方面的意见,作为预测未来的主要依据。根据上述定义,下
注塞或挤水泥前,对油井水泥有哪些要求?
大肠埃希菌中,脂肪酸从头合成的酰基载体是
在水泥混凝土路面中加钢筋网的目的主要是为了提高路面的强度。( )
当采用类似工程预算法编制概算时,一般需要调整的是()。
背景某项目部承接到长途直埋光缆线路工程,施工季节处于夏季,工程沿途经过果园、稻田、村庄等地。施工过程中发生了以下事件:事件一:施工单位在敷设光缆时,施工人员将光缆包装物随意丢弃;在郊外进行光缆接续时,将裁剪下的光缆外皮、加强芯、光纤束管
反映企业一定时点上财务状况的静态会计等式是()。
2007年9月,A、B、C、D协商设立普通合伙企业。其中,A、B、D系辞职职工,C系一非公司制的集体所有制企业。共同拟定的合伙协议约定:A以劳务出资,而B、D以实物出资,对企业债务承担无限责任,并由A、B负责公司的经营管理事务;C以货币出资,对企业债务以
结构化程序所要求的基本结构不包括( )。
ChooseTHREEletters,A-G.WhatTHREEthingsdoPaulandJennyhavetodonowfortheproject?AinterviewsomepeopleBhand
最新回复
(
0
)