首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base { public: void output() { cout
有如下程序: #include using namespace std; class Base { public: void output() { cout
admin
2021-05-06
9
问题
有如下程序:
#include
using namespace std;
class Base {
public:
void output() { 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
解析
在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数,本题中定义了一个指向派生类对象的基类指针ptr,执行ptr->output后,会执行基类的output函数,输出1,由于Print是虚函数,所以ptr->Print()会执行派生类的Print,即输出D,所以本题答案为B。
转载请注明原文地址:https://kaotiyun.com/show/yQfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数fun(int*arr,intn)的功能是将指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。并返回互不相同的元素的个数
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使该程序的输出结果为:100注意:错误的语句在//******error******的下面,修改该语句即可。1#include<io
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数func(intd[],intn)的功能是将长度为num的数组d的每一个数字是奇数的扩大l倍,并存储到数组d中。例如:123456789
下列关于模板的叙述中,正确的是()。
下列关于类模板的模板参数的叙述中,错误的是()。
下列字符串中不能作为C++标识符使用的是()。
下列符号中可以用作C++标识符的是()。
某个工厂有若干个仓库,每个仓库存放有不同的零件,相同零件可能放在不同的仓库中。则实体仓库和零件间的联系是
下面描述中不属于软件需求分析阶段任务的是
用于定义类的必不可少的C++关键字是
随机试题
“素质教育就是要使教师成为学生的合作者、帮助者和服务者。”这种观点忽略了教师的地位和作用,忽略了学生的特点,是对素质教育倡导的“学生主动发展”和“民主平等师生关系”的误解。()
支气管肺炎常见的并发症有______________、______________、______________。
由HSV-Ⅰ型单纯疱疹病毒感染引起的疱疹类型有()。
复式记账法就是对每一项经济业务以相等的金额同时在总账及其所属明细账中进行登记的一种记账方法。()
英译汉:“Unit Price”,正确的翻译为( )。
Livinginaforeignculturecanbeexciting,butitcanalsobeconfusing.AgroupofAmericanswhotaughtEnglishinothercoun
做人不能得寸进尺,也不能______。好多时候,我们帮助别人,不需要多少金钱,也不必伸出热情的手,往往一个______的交易,就已经足够了。填入横线部分最恰当的一项是()。
A、 B、 C、 D、 B
打开数据库的命令是
Thousandsofteachersattheelementary,secondary,andcollegelevelscantestifythattheirstudents’writingexhibitsatende
最新回复
(
0
)