选择题
有以下程序:
#include<iostream>
using namespace std;
class MyClass
{
public:
MyClass();
~MyClass();
void SetValue(int val);
private:
static int i;
};
int MyClass::i=0;
MyClass::MyClass()
{
i++;
cout<<i;
}
MyClass::~MyClass()
{
i--;
cout<<i;
}
void MyClass::SetValue(int val)
{
i=val;
}
int main()
{
MyClass*my[2];
int k;
for(k=0;k<2;k++)
my[k]=new MyClass;
for(k=0;k<2;k++)
delete my[k];
return 0;
}
运行后的输出结果是
。
A、
1210
B、
1100
C、
1234
D、
输出结果不确定
【正确答案】
A
【答案解析】
类MyClass中变量i是静态数据成员,它被MyClass类的所有对象共享,但它不属于任何一个对象,它的作用域是类范围。程序i是用来统计类MyClass所创建对象的个数,每创建一个对象i加1,每删除MyClass类对象i减1。
提交答案
关闭