首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class TestClass{ static int i; public: TestClass(){i++;}
有如下程序: #include using namespace std; class TestClass{ static int i; public: TestClass(){i++;}
admin
2015-08-14
54
问题
有如下程序:
#include
using namespace std;
class TestClass{
static int i;
public:
TestClass(){i++;}
~TestClass(){i--;}
static intgetVal(){return i;}
};
int TestClass∷i=0;
void f(){TestClass obj2;cout<
intmain(){
TestClass obj 1;
f();
TestClass*obj3=new TestClass;cout<
getVal();
delete obj3;cout<
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()即将结束时,系统自动调用析构函数~TestClauss(),i的值将减1;当定义obj3时,系统自动调用构造函数TcstClass(),i的值将加1,调用cout<
geVal();后,将i的值输出,输出值为2;调用delete obj3后将执行TestClass的析构函数~TestClass(),执行后,i的值将减1,TestClass∷getVal()为类的一个静态成员函数,其作用是返回私有静态成员变量i的值1。
转载请注明原文地址:https://kaotiyun.com/show/LvNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是()
在派生类中重新定义虚函数时,除了()方面,其他方面都必须与基类中相应的虚函数保持一致。
下列程序中,划线处正确的语句是()。#include<iostream.h>ClassBase{Public:Voidfun(){cout<<"Base::fun"<<endl;}};Cl
通常拷贝构造函数的参数是
类的析构函数是在什么时候调用的?
下列程序的运行结果为#include<iostream.h>Voidmain(){inta=2;ihtb=a+1;cout<<a/b<<end1;}
以下程序的运行结果是#include<iostream.h>voidsub(intx,inty,int*z){*z=y-x;}voidmain(){int
下列说法中,不属于数据模型所描述的内容的是
关于类模板,下列表述不正确的是
下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的选项是#include<iosweam.h>voidmain(){inta,b,t;cin>>a>>b;
随机试题
树立()是核心战斗力的思想,推进重大技术创新、自主创新,加强军事人才培养体系建设,建设创新型人民军队。
推进“一带一路”建设,为什么要秉持亲诚惠容,坚持共商共建共享原则?
X线管阳极的组成是
耳针法治疗头痛常用穴包括()
按生产工艺参数分类,调节系统可分为( )。
设备基础一般应分层浇筑,每层混凝土浇筑的厚度为200~300mm,并()。
试述法律与道德的区别。
美国的广告代理商正越来越多地使用被称为“商城拦截”的商城采访,以测试广告效果、产品概念可行性以及消费者的购买习惯。“商城拦截”的批评者坚持认为商城消费者的购买习惯不能代表更广大的人群。下面哪项,如果正确,最能支持该批评者关于“商城拦截”的宣称的证据
新民主主义革命的主要内容是
设则A与B().
最新回复
(
0
)