首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列程序的输出结果是______。 #include<iostream> using namespace std; class base { public: int n; base(int x){n=x;}
下列程序的输出结果是______。 #include<iostream> using namespace std; class base { public: int n; base(int x){n=x;}
admin
2010-12-16
53
问题
下列程序的输出结果是______。
#include<iostream>
using namespace std;
class base
{
public:
int n;
base(int x){n=x;}
virtual void set(int m){n=m;cout<<n<<’’;}
};
class deriveA:public base
{
public:
deriveA(int x):base(x){}
void set(int m){n+=m;cout<<n<<’’;}
};
class deriveB:public base
{
public:
deriveB(int x):base(x){}
void set(int m){n+=m;cout<<n<<’’;}
};
int main( )
{
deriveA d1(1);
deriveB.d2(3);
base*pbase;
pbase=&d1;
pbase->set(1);
pbase=&d2;
pbase->set(2);
return 0;
}
选项
答案
25
解析
本题考核虚函数的定义和调用。在C++中,一个基类指针(或引用)可以用来指向它的派生类对象,而且通过这样的指针(或引用)调用虚函数时,被调用的是该指针(或引用)实际所指向的对象类的那个重定义版本。题中基类成员函数set( )被定义成虚函数,而且其派生类 deriveA和deriveB都有函数set( )的重定义版本,所以通过指针pbase的两次调用分别调用的是派生类deriveA和deriveB中定义的版本,即输出25。
转载请注明原文地址:https://www.kaotiyun.com/show/enVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序,其中%u表示按无符号整数输出()。main(){unsignedintx=0xFFFF;/*x的初值为十六进制数*/printf("%u\n",x);}程序运行后的输出结果是()。
下面程序的运行结果是()。#includemain(){inti;for(i=1;i
设有定义:chars[81];inti=0;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()。
若变量已正确定义,则以下语句的输出结果是()。s=32:s^=32;printf("%d",s);
若有说明inta[3][4];则a数组元素的非法引用是()。
下列叙述中,不属于软件需求规格说明书的作用的是()。
程序设计的任务包括()。
以下选项中,能用作用户标识符的是()。
索引属于
数据处理的最小单位是
随机试题
账户
公式“=SUM(1,2,3,4,5,)”的值为()
在Word中,欲实现图(a)所示的排版效果,可以执行“首字下沉”中的________;欲实现图(b)所示的排版效果,可以执行“首字下沉”中的________。
阿尔茨海默病(AD)与血管性痴呆(VD)的主要鉴别是
为婴儿行心、肺复苏术,建立人工呼吸时,术者吹气频率为()。
【2017年真题】下列项目融资工作中属于融资决策分析阶段的是()。
( )应持有会计从业资格证书。
甲公司是M国的一家电子商务公司,2006年甲公司收购了N国一家从事电子商务业务的乙公司,从而正式进入N国。甲公司收购乙公司涉及的发展战略类型有()。
A、 B、 C、 D、 C
层次型、网状型和关系型数据库划分原则是()。
最新回复
(
0
)