首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class obj{ static int i; public: Obj(){i++;} ~Obj(){i--;} s
有如下程序: #include using namespace std; class obj{ static int i; public: Obj(){i++;} ~Obj(){i--;} s
admin
2017-02-18
49
问题
有如下程序:
#include
using namespace std;
class obj{
static int i;
public:
Obj(){i++;}
~Obj(){i--;}
statie int getVal(){return i;}
};
int obj::i=0:
void f(){obj oh2;cout<
int main(){
Obj obl;
f();
obj*oh3=new obj;cout<
getVal();
delete oh3;cout<
return 0;
}
执行这个程序的输出结果是( )。
选项
A、232
B、231
C、222
D、221
答案
D
解析
本题考查构造函数和析构函数的调用顺序,调用顺序为先构造的后析构,后构造的先析构。本题中先定义了一个对象ob1,会执行构造函数,那么i就变为了l;再执行函数f后,由于又定义了一个对象ob2,所以再次执行构造函数,i就变为了2,输出了2。函数执行完后执行析构函数,i变为了1,然后又定义了对象指针,i变为了2。释放ob3后,i变为了1,所以答案为D。
转载请注明原文地址:https://kaotiyun.com/show/cIAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下面四个选项中,()是用来声明虚函数的。
设有intx=11;,则表达式(x++*2/3)的值是
在数据流图(DFD)中,带有名字的箭头表示
以下程序的输出结果是【】。#include<iostream.h>voidfun(){staticinta=0;a+=2;cout<<
下面程序的结果是#include<iostream.h>classA{public:A(){cout<<"construtA"<<endl;}vir
能正确表示逻辑关系:“a≥10或a≤0”的C++语言表达式是
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、【】和选择排序等。
C++语言中关于构造函数的说法正确的是
函数inttest(inta,intb=l,intc=0),下列调用不合法的个数是test(0);test(0,0);test();test(0,0,0);
若需要利用形参直接访问实参,则应把形参变量说明为( )参数。
随机试题
中国悠久的历史、广袤的国土、与海外文化的广泛接触孕育了中餐的独特艺术。中国有一句古话至今还广为流传,叫作“民以食为天”。几千年的推陈出新和不断积累,使中餐受到越来越多的海外人士的青睐,成为我国对外文化交流的一个友好使者。中餐烹调所用的天然配料品种繁多,烹调
在颈动脉深面
根据违法行为的性质和危害程度的不同,法律责任分为
肾衰竭少尿期的患者补液时,液量供给的参考指标不正确的是
“西学中源”说尽管大多________、不符合事实,但是在思想史、文化史上具有重要的意义,一方面它有益于保留、________中国传统文化,另一方面促进了西学的中国化。 依次填入划横线部分最恰当的一项是()。
制订保险规划的原则包括以下哪些内容?()(2010年上半年)
音乐课程标准中,是从哪四个教学领域来进行内容标准表述的?
(2012年真题)清朝的最高司法审判机关是()。
[*]
KingAlfredwashonoredas______.
最新回复
(
0
)