首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序: #include using namespace std; cla
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序: #include using namespace std; cla
admin
2019-05-06
90
问题
虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数。而非虚函数不支持多态调用。有如下程序:
#include
using namespace std;
class Base
{
public:
virtual void f(){cout<<"f0+";}
void g(){cout<<"g0+";}
};
class Derived:public Base
{
public:
void f(){cout<<"f+";}
void go{cout<<,"g+";}
};
int main
{
Derived d;
Base*p=&d;
p->f();p->g();
return 0;
}
运行时输出的结果是( )。
选项
A、f+g+
B、f0+g+
C、f+g0+
D、f0+g0+
答案
C
解析
此题考查的是虚函数和多态性。此题中,因为f()是虚函数具有多态性,所以通过指针p调用的f()是派生类Derived中定义的f();而g()不是虚函数,通过指针p调用的是Base中的g()。
转载请注明原文地址:https://kaotiyun.com/show/4OAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
非成员函数应声明为类的______函数才能访问这个类的private成员。
线性表常采用的两种存储结构是()
有如下程序:#include<iostream>usingnamespacestd;classBase{public:voidoutput(){cout<<l;}virtualvoidPrint
若有如下类定义:classB{voidfun1(){}private:doublevarl;public:voidfun2(){}};classD:publicB{p
若有以下程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){X=0;}
软件是程序、数据和______的集合。
A、 B、 C、 D、 A本段程序实现从键盘接收一段字符串,并计算字符串的长度,cin输入流对象会将空白符、回车符、tab键作为终止标志,所以输入Ahcdefgabcd得到的字符串长度为7。
A、 B、 C、 D、 B算法的空间复杂度一般是指:执行这个算法所需要的存储空间,其中包括算法程序所占的空间、输入的初始数据所占用的存储空间以及算法执行过程中所需要的额外空间。
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
一个项目具有一个项目主管,一个项目主管只可管理一个项目,则实体“项目主管”与实体“项目”的联系属于______的联系。
随机试题
男性,62岁,近来咽第一口饭时常有哽噎感,首先应考虑( )。
标准物质,具有一种或多种足够的均匀和很好地确定了的特性,用以()。
实施爆破作业,在放射、毒害性环境中施工(含储存、运输、使用)及使用毒害性、腐蚀性物品施工时,承包人应在施工前()天以书面形式通知工程师。
运入加工现场的钢筋,每捆(盘)钢筋均应挂上标牌,标牌上没有()。
凯恩斯的对外贸易乘数理论认为,贸易顺差对国民收入的影响可以用公式:△Y=[△I+(△X-△M)]K来表示。该公式说明______。
回购交易是在现货交易基础上延伸出来的,它结合了现货交易和()的特点。
工资集体协商期间,雇员一方的首席代表()。[2011年5月二级真题]
A.条件(1)充分,但条件(2)不充分.B.条件(2)充分,但条件(1)不充分.C.条件(1)和(2)单独都不充分,但条件(1)和条件(2)联合起来充分.D.条件(1)充分,条件(2)也充分.E.条件(1)和(2)单独都不充分,条件(1)和条件(2
IEEE802.1标准包括局域网体系结构、网络______以及网络管理与性能测试。
下列程序的输出结果是()。#includemain()voidfun(int*a,int*b){inta=1,b=2,*x=&a,*y=&b;{int*k;fun(x,y);
最新回复
(
0
)