首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class TestClass{ static int i: public: TestClass(){i++:{ ~TestClaSS
有如下程序: #include using namespace std; class TestClass{ static int i: public: TestClass(){i++:{ ~TestClaSS
admin
2021-09-05
29
问题
有如下程序:
#include
using namespace std;
class TestClass{
static int i:
public:
TestClass(){i++:{
~TestClaSS 0{i--;}
static int getVal(){retum j;}
}
int TestClass::i=0:
void fO{TestClass obj2;cout<
int main(){
TestClass obj 1:
f():
TestClass*obj3=new TestClass;cout<
getVal();
delete obj3;cout<
return ():
}
程序的输出结粜是( ):
选项
A、232
B、221
C、222
D、231
答案
B
解析
由于i是类TestClass的静态成员,该成员被类的所有实例共享。当定义obj1时,系统自动调用构造函数TestClass(),i的值将加1:调用函数f()时,在定义obj2时系统会自动调用构造函数TestClass(),i的值将再加l;调用obj2.getVal();后,将i的值输出,输出值为2;当调用函数f()即将结束时,系统自动调用析构函数~TestClass(),i的值将减1;当定义obj3时,系统自动调用构造函数TestClass(),i的值将加1,调用cout<
getVal():后,将i的值输出,输出值为2;调用delete obi3后将执行TestClass的析构函数~TestClass(),执行后,i的值将减1,TestClass::getVal()为类的一个静态成员函数,其作用是返回私有静态成员变量i的值1。
转载请注明原文地址:https://kaotiyun.com/show/Fs5p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如下函数的作用是以双倍行距输出文件:voiddouble__space(ifstream&f,ofstream&t){charc;while(){;_________if(c==’\n’)t.p
下列关于模板的叙述中,错误的是()。
下列运算符函数中肯定不属于类FunNumber的成员函数的是()。
下列有关继承和派生的叙述中,正确的是()。
在类声明中,紧跟在“public:”后声明的成员的访问权限是()。
下列关于函数的描述中,错误的是()。
下面c++标识符中正确的是()。
有如下语句序列:intx=100,&r=x,count<<x<<’—’<<r<<end1:己知其中变量x的地址为0012FF7C,则执行该语句序列的输出结果为()。
若有定义“intx=4,y=5;”,则表达式“y>x++?x一一:y++”.的值为()。
随机试题
在工作中遇到哪些情况应重新签发工作票,并重新进行许可工作的审查程序?
癫痫持续状态的药物治疗首选_________。
半夏厚朴汤的药物组成中没有的
肾盂切开取石术后,肾盂造口管的护理不正确的是
移动通信直放站不宜设在()附近。
集装箱交接时,下列不属于空箱交接要求的是()
下列属于印花税的纳税人有()。
企业从银行借款以便给股东发放股利。这种筹资动机属于()。
醉驾是指因饮酒而完全丧失或部分丧失个人意志,在这种状态下驾驶机动车的行为。车辆驾驶人员血液中的酒精含量大于或者等于()/100mL的驾驶行为认定为醉驾。
数据库、数据库系统和数据库管理系统之间的关系是
最新回复
(
0
)