首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序; #include using namespace std; class Base{ public: void output0{cout
有如下程序; #include using namespace std; class Base{ public: void output0{cout
admin
2015-09-14
47
问题
有如下程序;
#include
using namespace std;
class Base{
public:
void output0{cout<<1;}
virtual void Print(){cout<<’B’;}
};
class Derived:public Base{
public:
void output(){cout<<2;}
void Print(){cout<<’D’;}
};
int main(){
Base
*
ptr=new Derived;
ptr->output();
ptr->Print();
delete ptr;
return 0
}
程序的输出结果是( )。
选项
A、1B
B、1D
C、2B
D、2D
答案
B
解析
此题考查的是虚函数与多态性。在成员函数的声明前面加上vimal关键字,即可把函数声明为虚函数;在C++中,一个基类指针可以用于指向它的派生类对象,而且通过这样的指针调用虚函数时,被调用的是该指针实际所指向的对象类的那个重定义版本。本题中,从基类的定义可以看出:output()函数是普通成员函数,而Print()函数是虚函数。所以,通过ptr指针调用的output()是基类中的output(),而通过它调用的Pfint()则是派生类中的Print()。
转载请注明原文地址:https://kaotiyun.com/show/jqNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序的运行结果是#include<iostream.h>classLocation{private:intX.Y;public:
以下程序的输出结果是#include<iostream.h>voidmain(){inti,j,x=0;for(i=0;i<2;i++){x++;
对于下面的程序ifstreamfin(c:\test.txt);if(fin)cout<<"ok";elsecout<<"wrong";对于if语句中的内容可
考虑函数原型voidtest(inta,intb=7,charz=’*’下面的函数调用中,属于不合法调用的是
若定义cin>str;当输入ObjectWindowsProgramming!所得的结果是str()
下列关于虚基类的描述中,错误的是()。
下列运算符中,()运算符在C++中不能重载。
软件开发环境是全面支持软件开发全过程的【】集合。
对虚函数的调用有两种方式:【】和【】。
随机试题
若幂级数anxn的收敛半径为R,则幂级数nanxn-1的收敛半径为__________.
[2004年第83题]空调系统的节能运行工况,一年中新风量应如何变化?
安全控制的方针是()。
下列视同销售行为中,应按最高价格计征消费税的有()。
Whoisbestknownforessaysthatgreatlyinfluencedthedevelopmentoftheliteraryform?
饥饿营销是指商品提供者有意调低产量,以期达到调控供求关系、制造供不应求“假象”、以维护产品形象并维持商品较高售价和利润率的营销策略。根据上述定义,下列选项中属于饥饿营销的是:
政治记者汤姆分析了奥巴马之前的十届美国总统的各种讲话和报告,发现其中有不少谎话,特别是关于经济问题的。因此,汤姆推断:奥巴马关于恢复美国经济的承诺也是谎话。以下哪项最能削弱上述论证?
在Word2003中,图片的环绕方式只有五种。
数据库系统的三级模式不包括()。
Fordays,Beijinghasbeentrappedunderablanketofyellow-browndustthattheU.S.Embassyairmonitorclassifies,initsho
最新回复
(
0
)