首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
有如下程序: #include using namespace std; class A { public: virtual void func1() { cout
admin
2020-07-23
26
问题
有如下程序:
#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/RFyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
用于定义类的必不可少的C++关键字是
有如下函数模板:templateTcast(Uu){returnu;}其功能是将U类型数据转换为T类型数据。已知i为int型变量,下列对模板函数cast的调用中正确的是()。
有如下程序:#includeusingnamespacestd;classA{public:A(){cout
有如下类定义:classMyClass{public:private:intdata;};若要为MyClass类重载流输入运算符">>",使得程序中可以"cin>>obj;"的形式改变MyClass类的对象ob
若磁盘上已存在某个文本文件,其全路径文件名为d:\ncre\test.txt,下列语句中不能打开该文件的是
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。
if语句的语法格式可描述为:格式1:if()或格式2:if()else关于上面的语法格式,下列表述中错误的是()。
下列语句中,错误的是()。
下列关于return语句的叙述中,正确的是
随机试题
求方程xy’+y-ex=0满足初始条件y|x=1=e的特解。
A、血尿B、高血压C、两者都有D、两者都无隐匿性肾炎综合征表现有
如题58图所示,均质圆环的质量为m,半径为R,圆环绕O轴的摆动规律为φ=ωt,ω为常数。将圆环的惯性力系向O点简化,其主矢FI和主矩MIO的数值为()。
在进行变电站绝缘子串的绝缘配合时,其操作过电压配合系数取()。
设L是连接点A(1,0)及点B(0,–1)的直线段,则对弧长的曲线积分等于()。[2013年真题]
甲仓库为乙单位保管500吨水泥,双方约定保管费用为1000元,后乙未能按约定支付保管费用,则甲可以( )。
德尔塔正态分布法中,VaR取决于两个重要的参数,即()。
【2011年典型真题】安全性可防范非法用户和非法操作,完整性可防范不合语义的数据。()
计算的值?
下列选项中,导热性最好的是_________,它比大多数气体的导热系数高出10倍,在能源工业中是极好的传热导体。
最新回复
(
0
)