首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include <iostream> using namespace std; class Obj { static int i; public: Obj( ){i++;}
有如下程序: #include <iostream> using namespace std; class Obj { static int i; public: Obj( ){i++;}
admin
2017-10-17
63
问题
有如下程序: #include <iostream> 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(); Obj *ob3=ew Obj; cout<<ob3->getVal( ); 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,接着输出的值为2。最后,释放动态创建的那个对象,i变为1,所以最后输出的值为1。因此,程序最终输出结果为221,应该选择D。
转载请注明原文地址:https://kaotiyun.com/show/XPAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
不能实现函数之间数据传递的是()
以下四种说法中,正确的一项是()
关于构造函数A()的拷贝构造函数正确的是()
数据库DB、数据库系统DBS和数据库管理系统DBMS这三者之间的关系是()。
在长度为n的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为______。
有以下程序:#include<iostream>#include<fstream>usingnamespacestd;intmain(){ofstreamofile;cha
若有如下语句#include<iostream.h>voidmain(){intx=3;do{x=x-2cout<<x;{while(!(--x);}则上面程序段
下面的描述中错误的是
下列运算符中,不能重载的是
在结构化设计方法中,数据流图表达了问题中的数据流与加工间的关系,并且每一个______实际上对应一个处理模块。
随机试题
分度叉调整角度变动引起的误差会影响分度精度,这种误差引起的原因属于___________误差。
患者在输血过程中出现严重的过敏反应,如要继续输血应选择
患者右上中切牙扭转近90°角,且伴有唇侧倾斜,牙髓正常,牙根长、粗大,牙槽骨轻度吸收,牙龈红肿,探易出血。如果选择桩冠修复,则根管治疗后开始桩冠修复的最早时间是()
在物的分类中,不动产是不能移动或虽可移动但移动后有损其价值的物。下列关于不动产的说法中,错误的是()。
根据《企业破产法》以及相关司法解释的规定,管理人对抵销主张提出异议,人民法院应予支持的是()。
甲公司是一家位于深圳的生产企业,于2017年9月10日与乙公司签订了一项不可撤销的销售合同,约定在2018年2月10日以每件50元的价格向乙公司提供A产品10000件,如果不能按期交货,将向乙公司支付总价款15%的违约金。由于原材料价格上升及人工成本高等因
2×18年3月20日,甲公司将所持账面价值为7800万元的5年期国债以8000万元的价格出售给乙公司。按照出售协议的约定,甲公司出售该国债后。与该国债相关的损失或收益均归乙公司承担或享有。该国债出售前,甲公司将其分类为以公允价值计量且其变动计入其他综合收益
准时生产方式(JIT)是日本丰田汽车公司在20世纪60年代实行的一种生产管理方式,又称为无库存生产方式。关于准时生产方式的基本思想,以下理解错误的是()。
以下叙述中正确的是
Thecommoncoldistheworld’smostwidespreadillness,whichisplagues(疫病)thatfleshreceives.Themostwidespreadfallac
最新回复
(
0
)