首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
45
问题
有如下程序:
#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/YMNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列描述中哪个是正确的?
()不是构造函数的特征。
下面程序输出的结果为 #include"iostream.h" classA { public: A(){cout<<"CLASSA"<<end1;} ~A(){} }; class
只能作为成员函数重载的是
不能重载的运算符是
作为非成员函数重载的运算符,所有操作数都必须以______的形式出现在参数表中。
执行下列语句后,c3中的值为【】 intc1=1,c2=2,c3;c3=1.0/c2*c1;
源程序中应包含一些内部文档,以帮助阅读和理解源程序,源程序的内部文档通常包括选择合适的标识符、注解和()。
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2}:则下列语句正确的是
若需要定义一个标识符常量,并且使得C++能够进行类型检查,则应在定义语句的开始使用保留字【 】。
随机试题
呼吸衰竭患儿气管插管后护理需注意
A.胰岛素B.格列齐特C.吡格列酮D.米格列醇E.二甲双胍属于α葡萄糖苷酶抑制剂的是()。
背景某施工单位中标一制药厂的机电工程安装项目。合同约定:工程设备由建设单位供应;工程材料由施工单位采购。中标后,该施工单位组建了项目经理部。经施工单位成本控制中心对工程人工费、材料费、施工机具使用费、企业管理费、措施费、规费、税金等费用的测算,在确保企业
关于涂饰工程基层处理,正确的有( )。
磨床加工精度较高,工作经磨削后尺寸精度可达()。
某公司全年需要零配件72000件,假设1年按360天计算,按经济订货基本模型计算的最佳订货量为9000件,订货日至到货日的时间为3天,公司确定的保险储备为1000件,则再订货点为()件。
讲授法是当前我国中小学使用最广泛的教学方法,它包括()。
以下选项中,不是pip工具进行第三方库安装的作用的是
设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为
A—Don’tfollowtoocloselyJ—Electronictollcollection(ETC)B—KeepdistanceK—ServiceareaC—AccidentareaL—NopassingD—Road
最新回复
(
0
)