首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序段: #include using namespace std; class base { public: base(int cnt) { resource=new int[cnt]
有如下程序段: #include using namespace std; class base { public: base(int cnt) { resource=new int[cnt]
admin
2021-07-02
38
问题
有如下程序段:
#include
using namespace std;
class base
{
public:
base(int cnt)
{
resource=new int[cnt];
}
~base()
{
delete[]resource;
}
virtual void show()
{
cout<<"base"<
}
int*resource:
};
class derived:public base
{
public:
derived(int cnt):base(cnt)
{
resource=new float[cnt];
}
~derived()
{
delete[]resource;
}
void show()
{
COUt<<"derived"<
}
float*resource;
};
上述程序使得derived对象中的动态内存空间有可能不被释放,有内存泄漏风险,原因是( )。
选项
A、base类是抽象类
B、derived类的析构函数没有释放基类的动态内存
C、base类的析构函数不是虚函数
D、derived类的resource与公有继承得到的resource同名
答案
C
解析
基类base中的数据成员resouree为整型指针变量,派生类derived中的数据成员resource与基类base中的同名,但类型为浮点型指针变量,基类base中构造函数使用new为resource(整型指针)分配了内存空间,在析构函数中释放;派生类derived的构造函数在成员初始化类表中调用base的构造函数构造对象的基类部分,然后在构造函数体内使用new为resource(浮点型指针)分配了内存空间,在析构函数中释放浮点型resource指针;由于基类base中的析构函数未定义为虚函数,所以派生类derived中的析构函数在被调用时,不会再调用基类base中的析构函数,导致基类base中的整型指针变量resource无法释放,造成内存泄漏。故本题答案为C选项。
转载请注明原文地址:https://kaotiyun.com/show/aifp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序段:inti=5;while(inti=0){cout<<’*’;i——,)运行时输出“*”的个数是()。
建立一个有成员对象的派生类对象时,各构造函数体的执行次序为()。
下列关于类模板的描述中,错误的是()。
有如下4个语句:①cout<<’A’<<setfill(’*’)<<left<<setw(7)<<’B’<<endl;②cout<<setfill(’*’)<<left<<setw(7)<<’A’<<’B’<<endl;③co
下列是重载乘法运算符的函数原型声明,其中错误的是()。
下列选项中不属于结构化程序设计方法的是()。
设二叉树的前序序列为ABDEGHCFIJ,中序序列为DBGEHACIFJ。则按层次输出(从上到下,同一层从左到右)的序列为
当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。
某二叉树中度为2的结点有10个,则该二叉树中有()个叶子结点。
数据库设计中反映用户对数据要求的模式是()。
随机试题
Mostpeoplewouldagreethat,althoughourageexceedsallpreviousagesinknowledge,therehasbeennocorrespondingincrease
女性,45岁,有十二指肠球部溃疡病史5年,近半月来上腹涨痛,间断呕吐。查上腹部膨隆,有振水音,宜选择下列哪项治疗
拔除不能保留的患牙属于牙周病预防的
A.按食品广告审批管理B.按保健食品广告审批管理C.按处方药广告审批管理D.按非处方药审批管理其他特殊医学用途配方食品广告()。
某大楼先后抵押给3家银行并都办理了抵押登记,债务人未能及时清偿债务,拍卖该大楼所得的价款按()顺序清偿。
某宾馆为了8月8日的开业庆典,于8月7日向电视台租借一台摄像机。庆典之日,工作人员不慎摔坏摄像机,宾馆决定按原价买下,以抵偿电视台的损失,遂于8月9日通过电话向电视台负责人表明此意,对方表示同意。8月15日,宾馆依约定向电视台支付了价款。摄像机所有权(
企业净利润分配一般都包括:①弥补以前年度亏损;②提取法定盈余公积金、法定公益金;③应付优先股股利,提取任意盈余公积;④应付普通股股利,转赠资本;⑤未分配利润,留待以后年度进行分配。下列关于分配顺序排列正确的是()。
要对社会现象作出正确的分析判断,即使是地区性的,也一定要走进现实社会中进行调查研究,绝不能凭空臆度。要明白事情的因果关系,建立有关的理论,不能没有现实资料,以供验证理论之用。所以()。
已知广义表A=((a,b,c),(d,e,f)),试问从A中取出原子e的操作运算是()o
(99年)设两两相互独立的三事件A,B和C满足条件:ABC=,P(A)=P(B)=P(C)<,且已知P(A∪B∪C)=,则P(A)=_____.
最新回复
(
0
)