首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class vehicle{ public: virtual int wheels()eonst{return 0;} };
有如下程序: #include using namespace std; class vehicle{ public: virtual int wheels()eonst{return 0;} };
admin
2017-02-18
92
问题
有如下程序:
#include
using namespace std;
class vehicle{
public:
virtual int wheels()eonst{return 0;}
};
class Car:public Vehicle{
public:
int wheels()eonst{return 4;}
};
void f1(Vehicle v){cout<
void f2(Vehicle&v){cout<
void f3(Vehicle*pv){cout<
wheels()<<’’;}
int main(){
Car c;
f1(c);t2(c);t3(&c);
return 0;
}
运行后的输出结果是( )。
选项
A、4 4 4
B、0 4 4
C、4 0 4
D、4 4 0
答案
B
解析
C++中,成员函数调用要触发多态需要满足两个条件:①被调用的成员函数必须是虚成员函数。②必须通过基类类型的引用或指针进行函数调用。
题意中,main()函数首先构造Car对象c,然后将对象c传给三个函数f1()、f2()和f3(),其中f1()的参数是基类类型对象,函数体中调用的是基类的成员函数,输出0;12()的参数是基类类型对象的引用,函数体中调用的类成员函数是虚函数,满足多态条件,输出4;f3()的参数是基类类型对象的指针,甬数体中调用的类成员函数是虚函数,满足多态条件,输出4。故本题答案为B选项。
转载请注明原文地址:https://kaotiyun.com/show/RIAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果为#include<iostream.h>intfunc(intn){if(n<1)return1;elsereturnn+func(n-1);retu
下面程序的运行结果是______。#include<iostream.h>voidmain(){charstr[]="SSSWLIA",c;intk;for(k=2;(c=str[k]!=
一个()允许用户为类定义一种模式,使得类中的某些数据成员、某些成员函数的参数和返回值能取任意数据类型。
下面关于C++语言变量的叙述错误的是()。
设有intx=11;,则表达式(x++*2/3)的值是
分布式数据库系统不具有的特点是
【】是实现C++语言编译时多态性的机制,【】是实现C++语言运行时多态性的机制。
假设inta=1,b=2;则表达式a+++--b的值为【】。
下列叙述中,不属于测试的特征的是
随机试题
A.虹膜B.盖膜C.玻璃膜D.位砂膜将眼房分隔成前房和后房的是()
不属于第二信使的是
目前施工图预算的主要编制方法是()。
若Gk=95kN,Qk=20kN,gk=2.600kN/m,qk=0.9kN/m,则梁的控制截面内力设计值为______kN·m。若Mmax=280.1kN·m,则梁的受拉配筋As=______mm2。
体操基本动作术语中,()是指腿做周或周以上的绕环式动作。
古希腊著名哲学家柏拉图在()中借助“洞穴中的囚徒”阐释了教育的概念。
国家发展劳动者休息和休养的设施,规定()。
Americansocietyisnotnap(午睡)friendly.Infact,saysDavidDinges,asleepspecialistattheUniversityofPennsylvaniaSchool
WhichnameisNOTrelatedtoBritain?
A、Itistheabilitytogethighscoresonsometests.B、Itistheabilitytodowellinschool.C、Itistheabilitytodealwith
最新回复
(
0
)