首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i--;} stat
有如下程序: #include using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i--;} stat
admin
2021-06-10
84
问题
有如下程序:
#include
using namespace std;
class Obj{
static int i;
public:
Obj(){i++;}
~Obj(){i--;}
static int getVal(){return i;}
};
int Obj::i=0;
void f(){Obj ob2;cout<<ob2.getVal();}
int main(){
Obj ob1;
f();
Obi*ob3=new obj:cout<<ob3->getVal();
delete oh3:cout<<Obj::getVal();
return 0;
}
执行这个程序的输出结果是( )。
选项
A、232
B、231
C、222
D、221
答案
D
解析
本题考查构造函数和析构函数的调用顺序,调用顺序为先构造的后析构,后构造的先析构。本题中先定义了一个对象obl,会执行构造函数,那么i就变为了1;再执行函数f后,由于又定义了一个对象ob2,所以再次执行构造函数,i就变为了2,输出了2。函数执行完后执行析构函数,i变为了1,然后又定义了对象指针,i变为了2。释放ob3后,i变为了1,所以答案为D。
转载请注明原文地址:https://kaotiyun.com/show/fVfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
请打开考生文件夹下的解决方案文件proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数
请打开考生文件夹下的解决方案文件proj3,其中定义的Matrix是一个用于表示矩阵的类。成员函数max_value的功能是求出所有矩阵元素中的最大值。例如,若有3×3矩阵则调用max_value函数,返回值为3。请编写成员函数max_value。
下列关于栈的描述中正确的是()。
下列各组类型声明符中,含义相同的一组是()。
下列关于模板的叙述中,错误的是()。
若MyClass是一个类名,且有如下语句序列MyClassc1,*c2;MyClass*c3=newMyClass;MyClass&c4=c1;上面的语句序列所定义的类对象的个数是()。
程序调试的任务是
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和()。
随机试题
丽芬是一位普通的农村妇女。丈夫长年在外打工。很少回家,还经常抽烟喝酒,每年拿不了多少钱回家。丽芬除了种地、养猪、养牛之外,还要照顾上学的女儿以及多病的婆婆,是家庭的经济支柱。婆婆和丈夫都希望丽芬再生一个男孩。可丽芬自己不想再生第二胎,也一直没有怀上。因此,
HAyEm稀释液中,氯化钠的主要作用是
气虚型子宫脱垂的首选方是
某银行与某投资商签订了担保合同,双方当事人没有约定保证方式,此时应按照()。
下列关于子女教育支出扣除规定的表述,错误的是()。
xBRL(可扩展商业报告语言)的作用很广泛,企业的各种信息,特别是财务信息,都可以通过xBRL在计算机互联网上有效地进行处理。信息发布者一旦输人了信息,就无需再次输入,通过xBRL就可以很方便地转换成书面文字,PDF文件,或者其他相应的文件格式。而且,通过
患者,女,54岁,胆源性胰腺炎发作数次,对预防其胰腺炎再次发作最有意义的措施是()。
下列家庭教育做法中,做法不合理的是()
下列各句中,没有语病的一句是()
Infact,PeterwouldratherhaveleftforSanFranciscothan______inNewYork.
最新回复
(
0
)