首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
有如下程序: #include using namespace std; class Base { public: void fun1() { cout
admin
2020-05-14
71
问题
有如下程序:
#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://www.kaotiyun.com/show/Ac8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面正确的函数定义是( )。
类MyClass的定义如下:classMyClass{public:MyClass(){value=0;}SetVariable(inti){value=i;}private:intvalue;
如果一个模板声明列出了多个参数,则每个参数之间必须使用逗号隔开,每个参数都必须使用()关键字来修饰。
下列叙述中错误的是()。
如果一个模板声明时有类型形参表,则多个参数之间必须使用_______隔开,每个参数都必须重复使用关键字______。
下列关于运算符重载的描述中,正确的是
下列关于运算符重载的叙述中,错误的是
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
下面不属于软件测试实施步骤的是()。
随机试题
色谱柱加长则()。
舞榭歌台,风流总被,雨打风吹去。榭:
最可能的诊断为该患者的恰当治疗方法是
患者,女,18岁。因牙龈肿痛,服用消炎止痛片,引发全身丘疹、红斑、风闭,掀热作痒,伴恶寒发热,舌苔薄黄,脉浮数。诊断为药疹,治疗应首选
信贷资金运动以()为轴心。
甲公司为我国境内注册的上市公司,2013年至2015年发生的有关交易或事项如下:(1)甲公司2013年3月2日自证券市场购入乙公司发行的股票100万股,共支付价款1480万元,另支付交易费用5万元。甲公司将其划分为可供出售金融资产核算。2013年12月3
品格与情怀是治学的思想_______,一些学者之所以受到世人敬仰,不惟其取得了丰硕的学术成果,更因其具有高尚的精神品格。学者高尚的精神品格有着丰富内涵,其中忧乐情怀是一个核心元素。忧乐情怀是儒家文化的重要精神.自古为学人所_______。填入划横
设周期为4的函数f(x)处处可导,且,则曲线y=f(x)在(-3,f(-3))处的切线为__________.
从技术角度看,________不是云计算所采用的关键技术方法。
算法的工作量大小和实现算法所需的存储单元多少分别称为算法的【】。
最新回复
(
0
)