首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
admin
2021-05-06
52
问题
有如下程序:
#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/pLfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序运行后没有内存遗漏。可以在修改处增加或者删除一条语句。本程序完成输入两个字符串,分别存储到s1,s2中。注意:不要改动main函数,不能增行
使用VC6打开考生文件夹下的源程序文件modi2.cpp。完成函数fun(chaur*str,char*s)空出部分。函数fun(char*str,char*s)的功能是:将在字符串str中下标为偶数位置上的字符,紧随其后重复出现一次,放在一个新串s中,s
建立一个有成员对象的派生类对象时,各构造函数体的执行次序为()。
建立一个类对象时,系统自动调用()。
关于函数中的,下列表述中错误的是()。
有如下函数模板:template<typenameT,typenameU>Tcast(Uu){returnu;}其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是(
用于定义类的必不可少的C++关键字是
下列有关继承和派生的叙述中,正确的是()。
下面对软件测试描述错误的是
随机试题
铁碳合金相图上的共析线是PSK线。
右顶区见一4cm×6cm×4cm的半球形病灶,于T1WI和T2WI为等信号,近颅骨处基底宽,增强后明显均匀强化,该病变可能为
患者,女性,58岁。四肢无力,握力减弱,步态不稳,有踩棉花样感觉,胸部束带感。该病人最可能的诊断为
天宗穴属于何经天池穴属于何经
主受纳与腐熟水谷的脏腑是
关于司法公开,下列哪一项不是《中共中央关于全面推进依法治国若干重大问题的决定》提出的明确要求?()
由拆借双方当事人协定的同业拆借利率完全由市场拆借资金的供求状况决定。()
资本市场
Thecinemadidnotemergeasaformofmassconsumptionuntilitstechnologyevolvedfromtheinitialpeepshowformattothepoi
It’s2:30pmandI’mprocrastinating.Theprojectis【C1】______by5o’clockandIcan’tseemtofindthe【C2】______togetitdone.
最新回复
(
0
)