首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include using namespace std; class A{ public: virtual void func1(){cout
有如下程序 #include using namespace std; class A{ public: virtual void func1(){cout
admin
2016-11-25
40
问题
有如下程序
#include
using namespace std;
class A{
public:
virtual void func1(){cout<<"A1";}
void func2(){cout<<"A2";}
};
class B:public A{
public:
void func1(){cout<<"B1";}
void func2(){cout<<"B2";}
};
int main(){
A*p=new B;
p->func1();
P->func2();
return 0:
}
运行此程序,屏幕上将显示输出( )。
选项
A、B1B2
B、A1A2
C、B1A2
D、A1B2
答案
C
解析
此题考查的是虚函数的概念。此题中,func1是虚函数,func2是一般成员函数,而且在派生类与基类中都存在两个这样的函数。在主函数中,语句A*p=new B;定义了一个基类的指针p,并让它指向一个派生类对象。所以通过该指针调用func1时,运行的是派生类的版本,而通过该指针调用func2运行的是基类的版本。所以程序运行的最后输出是:B1A2。
转载请注明原文地址:https://www.kaotiyun.com/show/yEAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下运算符中不能重载的运算符是
在模块化程序设计中,按功能划分模块的原则是
以下各项排序技术中属于交换类排序法的是()。
有如下程序:#include<iostream>usingnamespacestd;classXX{protected;intk;public:
如果一个模板声明列出多个参数,则多个参数之间必须使用______隔开,每个参数都必须重复使用关键字______。
switch后面括号中的表达式只能是整型、______或枚举型表达式。
当要使用ostrstream流类定义一个流对象并联系一个字符串时,应在文件开始处使用#include命令,使之包含()文件。
关于模板下列说法不正确的是
在一个容量为25的循环队列中,若头指针front=16,尾指针rear=9,则该循环队列中共有______个元素。
以下选项中合法的用户标识符是
随机试题
下列哪种定额的综合程度最高()。
护士对病人的呕吐物与排泄物的观察不包括
A.人血白蛋白B.外用栓剂(吲哚美辛栓)C.米索前列醇D.胰岛素注射液E.一般药品遇热(30℃以上)或遇潮则分解,造成效价下降,应交待患者保存药品时避免受热受潮的是()。
[2008年第071题]“远香堂”是哪座园林中的建筑?
每一个建设项目都应编制管理职能分工表,这是一个项目的组织设计文件的一部分。管理是由多个环节组成的有限的循环过程,包括()。
工程咨询企业采用9000族标准时应()。
支票的出票人签发支票的金额不得超过签发支票时其在付款人处实有的存款金额。()
Whichactivityisnotappropriateinthepost-listeningstep?
A、Shemusttakeonemoremathclassinordertograduate.B、Shetookalotofmathclassesinhighschool.C、Shedidn’thaveto
Asummaryofthephysicalandchemicalnatureoflifemustbegin,notontheEarth,butintheSun,infact,attheSun’sveryc
最新回复
(
0
)