首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
admin
2020-10-21
808
问题
有如下程序:
#include
using namespace std;
class Base
{
public:
void fun1() { cout<<"Base\n"; }
virtual void fun2() { cout<<"Base\n"; }
};
class Derived : public Base {
public:
void fun1() { cout<<"Derived\n"; }
void fun2() { cout<<"Derived\n"; }
};
void f(Base& b) { b.fun1(); b.fun2(); }
int main()
{
Derived obj;
f(obj);
return 0;
}
执行这个程序的输出结果是( )。
选项
A、Base
Base
B、Base
Derived
C、Derived
Base
D、Derived
Derived
答案
B
解析
在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,本题中定义了一个派生类对象obj,执行f函数后,将派生类对象obj转化为基类对象,由于fun1不是虚函数,所以输出基类的fun1;而fun2是虚函数,所以输出派生类的fun2,所以本题答案为B。
转载请注明原文地址:https://kaotiyun.com/show/p5yp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classSample{public;Sample(intx):ref(x){}//①private:Sample():ref(0){}//②sta
若PAT是一个类,则程序运行时,语句“PAT{*ad)[3]调用PAT的构造函数的次数是()。
己知类Myclass的定义如下classMyClass{public:voidfunctionl(MyClass&c){cout
有如下程序:#includeusingnamespacestd;classToy{public:Toy(char*_n){strcpy(name,_n);count++;}~
生成派生类对象时,派生类构造函数调用基类构造函数的条件是()。
下列类模板的定义中语法格式错误的是()。
设一棵完全二叉树共有700个结点,则此二叉树中的叶子结点数为()。
请使用VC6或使用【答题】菜单打开考生文件夹prog1下的工程prog1。此工程中包含程序文件main.cpp,其中有类Score(“成绩”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改
算法分析的目的是
设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。经过一系列正常的操作后,front=rear-1。为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为
随机试题
Lawrencewasrecognizedasaprominentnovelistonlyafterhepublishedhisthirdnovel______.
蛛网膜下腔出血最常见的病因是
颞下颌关节紊乱综合征的自觉症状有下颌动度异常、疼痛、__________和杂音。
招标人与中标人不按照招标文件和中标人的投标文件订立合同的,或者招标人、中标人订立背离合同实质性内容的协议的,责令改正;可以处中标项目金额()罚款。
关于建设工程分包的说法,正确的是()。
资本主义工资之所以会掩盖剥削,是因为它直接表现为()。
设立地方性公募基金会,其原始基金不得低于( )。
社会主义经济制度的基础是()。
已知a×(b×a)=b-2a,且|a|=1,|b|=4,求|a×b|的值.
Whenwethinkofoil,thepartoftheworldthatcomestomindfirstmaybetheMiddleEast.But【B1】______developmenttakesplac
最新回复
(
0
)