问题
填空题
有如下程序: #include<iostream> using namespace std; class pumpkin{ public: pumpkin(){++count;} ~pumpkin(){--count;} static void total_count(){ cout<<count<<"pumpkin(s)"<<end1; } private: static int count; }; int pumpkin::count=0; int main(){ pumpkin p1[10]; pumpkin::total_count(); return 0; } 这个程序的输出结果是______。
答案
参考答案:10pumpkin(s)
解析: 此题考查的是静态数据成员。题目中count数据成员要定义成静态的,静态数据成员是类中所有对象共享的成员,而不是某个对象的成员。本题中,pumpkin类定义了一个静态数据成员count,并初始化为0。在主函数中,首先定义了该类对象p1[10],所以构造函数被调用10次,count累加1十次;然后调用函数total count(),通过函数该输出count的值10。total count()函数结束,对象被释放,故析构函数被调用了10次,count变成0。