首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class Base { public: void fun1(){cout<<’’Base\n’’;} v
有如下程序: #include<iostream> using namespace std; class Base { public: void fun1(){cout<<’’Base\n’’;} v
admin
2020-04-07
38
问题
有如下程序:
#include<iostream>
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
解析
此题考查的是虚函数的概念。在C++语言中,一个派生类的对象可以被它的任何一个基类的指针所指向,若基类和派生类中存在一模一样的成员函数。那么通过该基类指针调用这样的成员函数时,若这个成员函数被定义成虚函数,那么就调用派生类中的;否则就调用基类中的。本题中,在f()函数中,形参b是一个基类的引用,它引用的是主函数中定义的派生类对象obj,所以在调用fun1()时,运行的是基类的版本,而fun2()运行的是派生类的版本。
转载请注明原文地址:https://kaotiyun.com/show/yk8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已知有函数f的定义如下:intf(){staticints=0;s+=2;returns;}则在某程序中第2次执行函数调用语句“f();”时,函数f的返回值是______。
有以下程序main( ){ int i=0,s=0;do{ if(i%2) {i+ +; continue; } i++; s+=i;}while(i<7)cout<<s<<end1;}执行后输出结果是
关于静态数据成员的描述中正确的是()。
数据库系统的核心是()。
有以下程序 main() { char a,b,c, *d; a=’\’;b=’\xbc’; c=’\0xab’;d="\0127"; cout<<a<<b<<c<<*d<<endl; } 编译时出现错误,以下
下列对字符数组进行初始化的语句,正确的是()。
()使一个函数可以定义成对许多不同数据类型完成同一个任务。
下面叙述错误的是()。
数据库管理系统常见的数据模型有层次模型、网状模型和_____3种。
支持子程序调用的数据结构是
随机试题
关于整体观念的叙述,错误的是
简述学校体育卫生工作管理的任务。
组织变革的内容包括()
A.无痛性肉眼血尿B.肉眼血尿伴肾绞痛C.初始血尿D.终末血尿伴膀胱刺激征肾结石的血尿特点是
A.通过蛋白激酶A通路发挥作用B.通过蛋白激酶G通路发挥作用C.通过蛋白激酶C通路发挥作用D.通过受体型酪氨酸蛋白激酶途径发挥作用E.通过JAK-STAT途径发挥作用
银汞合金的成球多是因为
甲公司股票当前每股市价40元,6个月以后股价有两种可能:上升25%或下降20%,市场上有两种以该股票为标的资产的期权:看涨期权和看跌期权。每份看涨期权可买入1股股票,每份看跌期权可卖出1股股票,两种期权执行价格均为45元,到期时间均为6个月,期权到期前,甲
请用不超过150字的篇幅,概括出给定资料所反映的主要问题。用不超过350字的篇幅,从下面所列的选项中选出你认为正确的选项,作为对给定资料所反映问题的解决方案,并加以论述。要有条理地说明,要体现针对性和可操作性。A.改正相关体制中存在的某些诱发学
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
将考生文件夹下MYLEG文件夹中的文件WEDNES.PAS复制到同一文件夹中,并改名为FRIDAY.PAS。
最新回复
(
0
)