首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: virtual void func1(){cout
有如下程序: #include using namespace std; class A { public: virtual void func1(){cout
admin
2020-06-29
43
问题
有如下程序:
#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<<"132";}
};
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://www.kaotiyun.com/show/wl8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
TestClass类定义如下:classTestClass{private:intid;chargender;char*phone;public:TestClass():
有如下程序:#include<iostream>usingnamespacestd;classBase{protected:inti;public:intj;};classDerived:
对基类数据成员的初始化必须在派生类构造函数中的______处执行。
下列程序的运行结果为#include<iostream,h>TemplateclassTT>classFF{TTa1,a2,a3;public;FF(TTb1,TTb2,TTb3){a1=b1
有以下程序,在横线应添加()。#includeusingnamespacestd;classTestClass{public:TestClass(intn){nu
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为______的。
下面程序的运行结果为#include<iostream.h>classA{staticintn;public:A(){n=1;}A(intnum){n=num;}
静态成员函数没有
下面关于C++语言变量的叙述错误的是
在E-R图中,用来表示实体之间联系的图形是
随机试题
在制剂中作为金属离子络合剂使用的是
左归丸的组成药物不包括
下列方药组成中有川乌、草乌的是
会员在期货交易中违约并出现保证金不足时,实行会员分级结算制度的期货交易所应当以()的顺序来承担风险。
某企业2018年年初房产原值3000万元,其中厂房原值2600万元,厂办幼儿园房产原值300万元,独立地下工业用仓库原值100万元。该企业2018年发生下列业务:(1)6月30日将原值为300万元的厂房出租,合同约定每年不含税租金24万元,7月1日起
下列有关辅助生产费用分配的说法中,正确的有()。
专家们表示,很多划时代的科技成果______引发人们生活方式的改变,短期内很可能难以被接受,但若放眼历史长河就会发现,所有重要的科技革命______都最终成为人类发展的加速器,同时也是人类生活品质提高的根本保障。 依次填入划横线部分最恰当的一项是:
在DSS中,为决策者提供使用系统的接口的部件是
在VisualFoxPro中,如果希望内存变量只能在本模块(过程)中使用,不能在上层或下层模块中使用。说明该种内存变量的命令是( )。
Folktoysarethosewhosedesignshavepasseddownthroughthegenerations,madebyhandandnotinfactories.【C1】______manufact
最新回复
(
0
)