首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void fun1(){cout
有如下程序: #include using namespace std; class Base { public: void fun1(){cout
admin
2018-08-13
30
问题
有如下程序:
#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<<"Dedved\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
解析
此题考查的是虚函数的概念。在C++语言中,一个派生类的对象可以被它的任何一个基类的指针所指向,若基类和派生类中存在一模一样的成员函数。那么通过该基类指针调用这样的成员函数时,若这个成员函数被定义成虚函数,那么就调用派生类中的:否则就调用基类中的。本题中,在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obj,所以在调用fun1()时,运行的是基类的版本,而fun2()运行的是派生类的版本。
转载请注明原文地址:https://kaotiyun.com/show/GyAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关系数据库管理系统能实现的专门关系运算包括()。
设有以下说明和定义:#include<iostream.h>Voidmain(){typedefunion{longi;intk[5];charc;}DATE;struct
有如下函数模板定义:template<classT>Tfunc(Tx,Ty){returnx*x+y*y;}在下列对func的调用中,错误的是()。
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列叙述中错误的是()。
以下关于友元函数的叙述不正确的是
有关构造函数的叙述不正确的是
假定其中的x的单位是角度且不考虑π的值的精度,则与数学公式等的C++语言表达式是()。
以下for语句中不是死循环的是
以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是()。
下列关于多态性的描述,错误的是
随机试题
人民法院对管辖权发生争议,由争议双方协商解决。协商不成的,报()指定管辖。
A、行政方法B、经济方法C、法律方法D、思想教育方法E、社会心理学方法运用社会学、心理学知识,按照群体和个人的社会心理活动特点及其规律进行管理的方法是
茯苓长于黄芪长于
A.干扰力B.对抗重建力C.消耗力D.平衡稳态力E.适应力
工程建设中应采取的消防安全措施有()。
增加值率就是一定时期内增加值占总产出的比重()
当导游员得知旅游者在游览活动中走失情况后,应采取的措施是()。
教育是一种有目的地培养人的社会活动。下列有关学校教育任务的描述正确的有()。
当CD刚进入市场时,它们的价格远远高于磁带,生产商说这是由于采用了不同寻常的新技术导致生产CD的高成本所造成的。随着生产技术的日益成熟,CD的价格的确下降了,相反的是,经过了长期生产的磁带的价格反而上升了。以下哪一项最好地解释了上文中磁带价格的上
设f(x)=a1ln(1+x)+a2ln(1+2x)+…+anln(1+nx),其中a1,a2,…,an为常数,且对一切x有|f(x)|≤|ex-1|.证明:|a1+2a2+…+nan|≤1.
最新回复
(
0
)