首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class TestClass{ static int i; public: TestClass(){i++;}
有如下程序: #include<iostream> using namespace std; class TestClass{ static int i; public: TestClass(){i++;}
admin
2020-10-21
36
问题
有如下程序:
#include<iostream>
using namespace std;
class TestClass{
static int i;
public:
TestClass(){i++;}
~TestClass (){i--;)
static int getVal0{return i;}
};
int TestClass::i=0;
void f(){TestClass obj2;cout<<obj2.getVal();}
int main(){
TestClass obj1;
f();
TestClass*obj3=new TestClass;cout<<obj3->getVal();
delete obj3;cout<<TestClass::getVa1();
return 0;
}
程序的输出结果是( )。
选项
A、232
B、221
C、222
D、231
答案
B
解析
由于i是类TestClass的静态成员,该成员被类的所有实例共享。当定义obil时,系统自动调用构造函数TestClass(),i的值将加1;调用函数f()时,在定义obj2时系统会自动调用构造函数TestClass(),i的值将再加1;调用obj2.gotVal();后,将i的值输出,输出值为2;当调用函数f()即将结束时,系统自动调用析构函数~TestClass(),i的值将减1;当定义obj3时,系统自动调用构造函数TestClass(),i的值将加1,调用cout<
getVal();后,将i的值输出,输出值为2:调用delete obj3后将执行TestClass的析构函数~TestClass(),执行后,i的值将减1,TestClass::getVal()为类的一个静态成员函数,其作用是返回私有静态成员变量i的值1。
转载请注明原文地址:https://kaotiyun.com/show/DNyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)重载运算符int,请在注释//********1********后添加适当的语句。(2)重载运算符“<<”请在注释//****
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:1,2,3,4,5,注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//********3********的下
使用VC6打开考生文件夹下的源程序文件modi3.cpp,阅读下列程序说明和代码,功能如下:从屏幕输入数字,然后由大到小插入指定的链中。当输入0时,表示输出的数据已经输入完成,然后把数据打印到屏幕,然后释放内存。其中定义的类并不完整,按要求完成下列操作
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:sizeof(str1)=5sizeof(str2)=10sizeof(str3)=1注意:不要改动main函数,
有如下程序:#include<iostream>usingnamespacestd;classXX{protected:intk;public:XX(intn=5):k(n){};~XX(){cout<<"XX";}vi
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)完成类TestClass1的成员函数seta定义,定义seta对象x为int类型,请在注释//********1********
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。程序的功能是寻找1~500以内的亲和数并显示出来,函数amicableNum(intm,intn)判定两个数是否是亲和数。亲和数的定义为:两个数m和n,
有如下程序:#inc1ude<iostream>usingnamespacestd;classMyclass{public:Myclass(inti:0){cout1<<;}Myclas
下列语句中错误的是()。
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>1;i-=2)cout
随机试题
A.上叶下部或下叶上部近胸膜处B.上叶后段或下叶背段C.上叶尖后段和下叶背段D.左下叶和舌叶支气管.支气管扩张好发于
动脉粥瘤的病变包括
考虑梁的支座为固定端,则跨中纵向钢筋的最小配筋率与( )项数值最接近。设箍筋间距s=100mm,形式为双肢箍,支座截面弯矩设计值M=226.640kN·m,剪力设计值V=153.4kN,扭矩设计值T=50kN·m,Wt=41666667mm3,已
下列对期货市场交易的说法正确的是()。
下列关Word分栏排版功能的叙述中,正确的是()。
关于职业化管理,正确的说法是()。
酶是生命活动中不可缺少的生物催化剂。DNA酶、限制酶、蛋白酶可分别作用于()。
SomeofthewhitesofCubathoughtoneraceofmenisbetterthananyother.Maceowastheleaderoftheantiracialism.
(1)Consideringthatanxietymakesyourpalmssweat,yourheartrace,andyourbrainseizeuplikeacarwithabustedtransmi
Youaregivenaseriesofnumbers.Yourtaskistoseehowtheyformarelationshipwitheachother.Youhavetochoosethenumb
最新回复
(
0
)