首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
admin
2020-10-21
20
问题
有如下程序:
#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/Rryp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于运算符重载,下列表述中正确的是()。
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>l;--i)cout
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程proj3,其中声明的是一个人员信息类,补充编制程序,使其功能完整。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:Zhang20Tsinghua。注意:只能在函数ad
下列关于类和对象的叙述中,错误的是()。
有如下程序:#includeusingnamespacestd;classsample{private:intx,y;public:sample(inti,intj)
下面不属于C++的预定义的流对象是()。
设某棵树的度为3,其中度为3、2、1的结点个数分别为3、0、4。则该树中的叶子结点数为
设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。经过一系列正常的操作后,front-1=rear。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为
随机试题
术前常规禁食的时间是
下列药物中属于孕激素的是
下列关于法律渊源说法不正确的是:
安全生产管理是实现安全生产的重要()。
在租赁期开始日,企业租入的资产可以选择不确认使用权资产和租赁负债的是()。
简述教学智慧的生成要素。
政府依法行政,有利于()。
1.任何道德都是在人的社会关系中形成的,都是某种程度的公德。自改革开放以来,中共中央在社会道德领域通过推行“五讲四美三热爱”活动、发布《爱国主义教育实施纲要》等举措,引导群众更好地规范自己的道德观念、道德情感和道德行为。而《公民道德建设实施纲要》的颁布,更
关于深入贯彻习近平生态文明思想,以下说法错误的是()。
Whatemployersaresupposedtodoinhardeconomictimes?
最新回复
(
0
)