首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: 撑include<iostream> using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i-;} static int getVal(){retu
有如下程序: 撑include<iostream> using namespace std; class Obj{ static int i; public: Obj(){i++;} ~Obj(){i-;} static int getVal(){retu
admin
2019-06-04
61
问题
有如下程序:
撑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 obl;
f();
Obj *ob3=new 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并输出。最后释放动态创建的对象i变为1,输出1。故最终的输出结果是221。
转载请注明原文地址:https://kaotiyun.com/show/k98p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下列关系运算中,不改变关系表中的属性个数,但能减少元组个数的是A)并B)交C)投影D)笛卡儿乘积
有如下程序:#include<iostream>usingnamespacestd;classTlestClass{intn;public:TestClass(intk):n(k){
有如下程序:#include<iostream>usingnamespacestd;classBase{protected:Base(){cout<<’Base’;}Base(char
在对函数进行原型声明时,下列语法成分中,不需要的是()。A)函数返回类型B)函数参数列表C)函数名D)函数体
下面有关for循环的正确描述是
下列叙述中错误的是()。
若磁盘上已存全路径文件名为c:\ctest\test.txt的文件,下面语句中不能打开该文件的是()。
下面关于面向对象的程序设计方法中,正确的是()。
在数据流图(DFD)中,带有名字的箭头表示
软件测试用例包括()。
随机试题
改变病情抗风湿药治疗类风湿关节炎的作用包括
有关乳牙临床应注意的方面有
实验室内仪器应符合标准要求,保证准确可靠,计量器具使用前计量器具需
下列糖尿病慢性并发症中属微血管病变的是
下列关于城市规划管理方面的基本术语,哪一项是错误的?()
价值工程应用中方案创造可采用的方法有()。
某汽车运输公司2017年11月购置客车3辆并办理了相关手续,未签订合同;2017年12月与甲企业签订货物运输合同,合同记载材料价款100万元,运输费10万元,装卸费2万元,保险费3万元(客车车船税年税额为500元/辆)。则下列说法正确的有()。
输血本质上是一种移植,必然会伴随一系列可能发生的免疫反应,移植物抗宿主病就是其中之一,其发病原因简单说来就是供血者体内的免疫活性淋巴细胞在患者体内迁移、增殖,反客为主,进而攻击患者的免疫系统。正常情况下,受血者会把供血者淋巴细胞识别为“异己”而加以排斥,这
Thiswasanunexceptionallybrutalattack.
A—sittingroomB—manager’sofficeC—presidentialsuiteD—generalreceptionE
最新回复
(
0
)