首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class TestClass{ static int i; public: TestClass(){i++;} ~TestClass(){i--;} stati
有如下程序: #include<iostream> using namespace std; class TestClass{ static int i; public: TestClass(){i++;} ~TestClass(){i--;} stati
admin
2019-03-05
46
问题
有如下程序:
#include<iostream>
using namespace std;
class TestClass{
static int i;
public:
TestClass(){i++;}
~TestClass(){i--;}
static int getVal(){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::getVal();
return 0;
}
程序的输出结果是( )。
选项
A、232
B、221
C、222
D、231
答案
B
解析
由于i是类TestClass的静态成员,该成员被类的所有实例共享。当定义obj1时,系统自动调用构造函数TestClass(),i的值将加1;调用函数f()时,在定义obj2时系统会自动调用构造函数TestClass(),i的值将再加1调用obj2.getVal();后,将i的值输出,输出值为2;当调用函数f()即将结束时,系统自动调用析构函数~TestClass(),i的值将减1;当定义obj3时,系统自动调用构造函数TestClass(),i的值将加1,调用cout<<obj3->getVal();后,将i的值输出,输出值为2;调用delete obj3后将执行TestClass的析构函数~TestClass(),执行后,i的值将减1,TestClass::getVal()为类的一个静态成员函数,其作用是返回私有静态成员变量,i的值1。
转载请注明原文地址:https://kaotiyun.com/show/RvAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;classBase{private:charc;public:Base(charn):c(n){}~Base()
不能作为函数重载的判断依据的是
下列程序的运行结果为#include<iostream.h>template<classTT>classFF{TTa1,a2,a3;public:FF(TTb1,TTb2,TTb3){a1=b1;
下面程序的运行结果是()。#include<iostream.h>intfun(inta[],intn){intresult=1;for(inti=“i<n;i++)result’resultx
有如下类定义:classAA{inta;public:intgetRef()eonst{return&a;}//①intgetValue()const{returna;}//②
数据库设计的4个阶段是:需求分析、概念设计、逻辑设计和
类MyClass的定如下,若要对value赋值,则下面语句正确的是()。classMyClass{public:MyClass(){}MyClass(inti){value=newint(i);}
对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为()。
下列字符串中可以用做C++语言标识符的是
随机试题
解除宫腔粘连后为防止再次粘连应采取下列哪项措施
A.高白细胞血症B.白细胞淤滞C.诊断分类D.化疗和HSCTE.蒽环类药物
患儿,男,12岁,肺动脉瓣区听到3/6级收缩期杂音,同时听到不受呼吸影响的明显第二心音分裂。该患者可能是
4个月的小儿可以添加的辅食包括
关于成人呼吸窘迫综合征患者呼吸变化的描述,下列错误的是
地下水位下降时,建筑物的沉降可能会()。
银行办理个人汽车贷款的内部操作流程包括()。
重合闸前加速保护第一次动作有选择性。()
4,4,4,8,64,()。
A、BecausetheU.N.wantsmorepeopletolearnaboutthevalueofmountains.B、BecausetheU.N.wantsmorepeopletolearnabou
最新回复
(
0
)