首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #inc1ude <iostream> using namespace std; class Base { public: void funl(){cout<<"Base\n";} vi
有如下程序: #inc1ude <iostream> using namespace std; class Base { public: void funl(){cout<<"Base\n";} vi
admin
2019-06-12
34
问题
有如下程序:
#inc1ude <iostream>
using namespace std;
class Base
{
public:
void funl(){cout<<"Base\n";}
virtual void fun2(){cout<<"Base\n";}
};
class Derived: public Base
{
public:
void funl(){cout<<"Derived\n";}
void fun2(){cout<<"Derived\n";}
};
void f(Base&b){b.funl(); b.fun2();}
int main()
{
Derived obj;
f(obj);
return 0;
}
执行这个程序的输出结果是( )。
选项
A、Base
B、Base Base Derived
C、Derived
D、Derived Base Derived
答案
B
解析
此题考查的是虚函数的概念。在C++语言中,一个派生类的对象可以被它的任何一个基类的指针所指向,若基类和派生类中存在一模一样的成员函数。那么通过该基类指针调用这样的成员函数时,若这个成员函数被定义成虚函数,那么就调用派生类中的;否则就调用基类中的。本题中,在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obj,所以在调用funl0时,运行的是基类的版本,而fun2()运行的是派生类的版本。
转载请注明原文地址:https://kaotiyun.com/show/OT8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
通过使用new和delete两个运算符进行的分配为【】存储分配。
有如下程序: #include<iostream> using namespace std; class Complex { double re,im; public: Complex(double r,doubl
为了表明一个函数不带返回值,应在定义函数时指定该函数类型为______。
已知下列程序的输出结果是42,请将画线处缺失的部分补充完整。#includeusingnamespacestd;classTlestClass{intvalue;public:TestC
由于常对象不能被更新,所以()。
______是一种特殊的成员函数,它主要用来为对象分配内存空间,对类的数据成员进行初始化并执行对象的其他内部管理操作。
下列程序从保存整数的文本文件"c:Sample.dat"中依次取出每个数据并显示出来,同时统计并显示出所有数据的个数。程序划线处的表达式为【 】。#include<stream,h>#include<st
下面选项中不属于面向对象程序设计特征的是
以下不是结构化程序设计方法的技术是()。
继承的方式有公有继承、私有继承和______3种。
随机试题
计算二重积分dσ,其中D是由圆x2+y2=3所围成的闭区域.
阿托品应用注意事项是:
A.氟哌啶醇B.丙咪嗪C.芬太尼D.氯氮平E.苯海索用于治疗抑郁症的药物是
卖蛙人肖某系某农贸市场水产个体经营户,1996年1月7日,在某农贸市场出售青蛙,被野生动植物自然保护站工作人员发现,当即抽样检查认定是虎蚊蛙,为国家二级保护野生动物。根据《野生动物保护法》的规定:出售,收购、运输、携带国家和地方重点保护野生动物或者其产品的
土基达到最大干密度所对应的含水量是()。
货币政策四大目标之间存在矛盾,任何一个国家要想同时实现是很困难的,但其中()是一致的。
维生素A缺乏时眼部可能出现的症状有()
在企业价值链中,基本增值活动包括()。
资产负债利率敏感性管理
设3阶方阵A=(α1,α2,α3)的3个特征值各不相同,且3维列向量α1,α2,α3满足α1=α2+2α3,则r(A)=__________.
最新回复
(
0
)