unsigned int sum_int( unsigned int base){ unsigned int index; static unsigned int sum = 0; // 注意,是static类型的。 for (index = 1; index <= base; index++) sum += index; return sum; }
4 类的static成员变量
class A{public: static int cnt; A(){cnt++;} static int how_many_instance(){ return cnt; }};int A::cnt = 0; //类的static成员变量必须在类外初始化,并且在加上其类型和类名::int main(){ cout<<A::how_many_instance()<<endl; A a, b, c, d; cout<<A::how_many_instance()<<endl; return 0;}
5 类的const成员变量类的const成员变量只能以初始化列表的形式初始化
class A{public: const int a; A(){a=0;}};class A{public: const int a; A():a(10){}};上面程序第一个报错,因为类的const成员变量只能以初始化列表的形式初始化。