首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespaee std; class Obj { static int i; public: obj() {i++;} -obj()
有如下程序: #include<iostream> using namespaee std; class Obj { static int i; public: obj() {i++;} -obj()
admin
2021-09-05
64
问题
有如下程序:
#include<iostream>
using namespaee std;
class Obj {
static int i;
public:
obj() {i++;}
-obj() {i--;}
static int getVal() {return i;}
};
int obj∷i=0:
void f() {obj oh2;cout<<ob2.getVal();}
int main() {
obj ob1;
f();
Obj * ob3=new obj;cout<<oh3->getVal();
delete ob3;cout<<obj∷getVal();
return 0;
}
执行这个程序的输出结果是( )。
选项
A、232
B、231
C、222
D、221
答案
D
解析
本题考查构造函数和析构函数的调用顺序,调用顺序为先构造的后析构,后构造的先析构。本题中先定义了一个对象ob1,会执行构造函数,那么i就变为了1;再执行函数f后,由于又定义了一个对象ob2,所以再次执行构造函数,i就变为了2,输出了2。函数执行完后执行析构函数,i变为了1,然后又定义了对象指针,i变为了2。释放ob3后,i变为了1,所以答案为D。
转载请注明原文地址:https://kaotiyun.com/show/F7fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下枚举类型定义:enumDAY{SUN,MON=10,TUE,WED,THU,FRI=20,SAT};执行下列程序段for(inti=0;i
下列运算符中,在C++语言中不能重载的是()。
下列程序的运行结果为()。#includevoidprint(doublea){cout
下列选项中属于面向对象设计方法主要特征的是
下列选项中不属于结构化程序设计原则的是
下列数据结构中,能够按照“先进后出”原则存取数据的是()。
下列选项中属于面向对象设计方法主要特征的是()。
下列控制格式输入输出的操作符中,能够设置浮点数精度的是()。
代码编写阶段可进行的软件测试是
软件测试的目的是()。
随机试题
维生素A含量最丰富的食物是
肝糖原合成中葡萄糖载体是
下面关于暂时冠桥的说法,不正确的是
A.流脑B.乙脑C.狂犬病D.结核性脑膜炎E.虚性脑膜炎脑脊液压力升高,外观无色透明,白细胞计数多在(50~500)×106/L,氯化物、糖正常,蛋白稍升高,应诊断为
心脏停搏时最常见的心电图表现是
甲、乙签订一份二手房房屋买卖合同。约定:“本合同一式三份,经双方签字后生效。甲、乙各执一份,留见证律师一份,均具有同等法律效力。”关于该条款,下列哪一选项是正确的?(2010年卷一12题)
在确定与被审计单位治理结构中的哪些适当人员沟通时,下列做法中正确的有()。
在外地召开的重大会议,其通知所涉及的地址有()。
设λ1,λ2是矩阵A的两个不同的特征值,对应的特征向量分别为α1,α2,则α1,A(α1+α2)线性无关的充分必要条件是()
Ibecameinterestedinwritingatanearlyage.Sowhenmyfourth-gradeteachertoldmeabouta【C1】______writer’sconferencewh
最新回复
(
0
)