首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D
admin
2012-01-20
24
问题
有如下程序: #include<iostream> using namespace std; class B{ public: virtual void show( ){cout<<"B";} }; class D:public B{ public: void show( ){cout<<"D";} }; void funl(B*ptr){ptr->show( );} void fun2(B&ref);ref.show( );} void fun3(B b){b.show( );} int nlain( ){ B b,*P=Dew D; D d; funl(p); fun2(b); fun3(d); return 0; } 程序的输出结果是
选项
A、BBB
B、BBD
C、DBB
D、DBD
答案
C
解析
基类指针可以指向派生类对象,在对象作为参数传递时,是通过“传值调用”传递给函数的,是单向传递。使用对象指针对函数参数进行传递时,是通过“传址调用”传递给函数的,即函数的形参对象和实参对象指针变量指向同一内存地址;使用对象引用作为函数参数时,也是通过“传址调用”传递给函数的。funl(p)传递的是类D对象的地址,所以调用类D的是show( ),fun2(b)调用的和传递的都是类B的对象引用,所以调用类B的show( )。调用’fun3(d)时,由于void fun3(B b)传递的虽然是D类对象,但是形参是B类对象,所以调用基类B的show( )。
转载请注明原文地址:https://jikaoti.com/ti/2BL0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下叙述中错误的是()。
有以下程序:#include<stdio.h>main(){ chars[]="012xy\08s34f4w2"; inti,n=0; for(i=0;s[i]!=0;i++) if(s[i]>=’0’
可在C程序中用作用户标识符的一组标识符是()。
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。例
设有如下三个关系表:下列操作中正确的是()。
C语言中规定,程序中各函数之间()。
给定程序MODll.C中函数fun的功能是:按以下递归公式求函数值。例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。请改正程序中的错误,使它能得出正确结果。注意:不要改动main函数,不得增行或删行,也不得
以下与存储类别有关的四组说明符中,全部属于静态类的一组是
若有定义:typedefcharT[10];T*a:上述定义中a的类型与下面选项中完全相同的是()。
随机试题
以下不属于非抽样误差的是()
急性弥漫性腹膜炎可有
患者男孩8岁,两年前父母离异,随父亲生活,一年前父亲再婚,婚后半年,男孩患精神分裂症入院,且家庭冲突加剧,正面临着家庭破裂。
急性肾炎的中医病机主要是()
下列对证券市场的影响方向与其他政策不一致的是( )。
QDII基金定期报告中的特殊披露要求有()。Ⅰ.境外投资顾问和境外资产托管人信息Ⅱ.境外证券投资信息Ⅲ.外币交易及外币折算相关的信息Ⅳ.投资顾问主要负责人变动信息
犯罪嫌疑人在侦查阶段不可以聘请律师。()
文化变迁:是指文化内容的增加或减少所引起的文化系统结构、模式、风格的变化。下列属于文化变迁的是()。
Artificialheartshavelongbeenthestuffofsciencefiction.In"Robocop",snazzycardiacdevicesaremadebyYamahaandJense
somepeopleprefertoplanactivitiesfortheirfreetimeverycarefully.Otherschoosenottomakeanyplanatallfortheirfr
最新回复
(
0
)