首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i
有如下程序: #include<iostream> using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i
admin
2020-07-30
46
问题
有如下程序:
#include<iostream>
using namespace std;
class Obj{
static int i;
public:
Obj(){i++;}
~Obj(){i--;}
static hat getVal(){return i;}
};
int Obj::i=0;
void f(){Obj ob2;cout<<ob2.getVal();}
int main(){
Obj ob1;
f();
Obj*ob3=new Obj;cout<<ob3->getVal q();
delete ob3;cout<<Obj::getVal();
return 0;
}
程序的输出结果是( )。
选项
A、232
B、231
C、222
D、221
答案
D
解析
此题考查的是静态成员。本题中,Obj类定义了一个静态数据成员i,并初始化为0在主函数中,首先定义了1个该类对象ob1,所以构造函数被调用1次,i加1;然后调用函数f(),该函数中又定义了一个对象ob2,此时i再次加1变为2,然后通过函数getVal()揄出i的值2。f()函数结束,ob2变量被释放,故析构函数被调用了1次,i变成1;回到主函数中,又动态创建了1个对象并让ob3指向它,此后i变成2并输出。最后释放动态创建的对象i变为1,输出1。故最终的输出结果是221。
转载请注明原文地址:https://jikaoti.com/ti/mBl0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
阅读以下程序:#includevoidmain(){staticinta[][2]={5,3,1,2};imti,j,sl=0;for(i=0;i<2i++)
有如下程序#includeusingnamespacestd;classTest{public:Test(){}Test(constTest&t){cout
已知基类Employee只有一个构造函数,其定义如下:Employee∷Employee(intn):id(n){}Manager是Employee的派生类,则下列对Manager的构造函数的定义中,正确的是()。
有如下程序:#includeusingnamespacestd;classMountain{intheight;public:Mountain(int=0):height(h){}
已知主函数中通过如下语句序列实现对函数模板swap的调用:inta[10],b[10];swap(a,b,10);下列对函数模板swap的声明中,会导致上述语句序列发生编译错误的是()。
下列关于基类和派生类关系的叙述中,正确的是()。
下列关于运算符重载的描述中,错误的是()。
在软件开发中,需求分析阶段产生的主要文档是()。
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。
随机试题
引起先天性糖代谢障碍的酶缺陷不包括
医疗机构制剂室应有的配制管理、质量管理的各项制度和记录包括()
删除科目应该受到控制,例如,()不能删除。
下列选项中,()是对进出口许可证制度基本内容的概括。
我国古典园林构景中,把园外或远处的景,组合到园内的景观画面中来,使空间推展极远。这一远景处理手法为()。
知识是个体通过与环境相互作用后获得的()
成败归因的两个维度是__________,四个因素是能力、__________、运气和__________。
你和同事交谈时无意说了领导的坏话,在随后的会议上。领导间接地批评了你,你怎么办?
简要分析LAC曲线U形特征的原因。
NineteenCaliforniapharmaciesfiledastatelawsuitThursdayaccusingtheworld’slargest【C1】______companiesofconspiringto
最新回复
(
0
)