C++静态成员变量的坑
- 静态类成员只能在类内声明,类外初始化
原因:若在类内初始化,则每次实例化都会初始化静态变量,则静态变量无意义。
特例:
const static int(enum)允许类内初始化(老式编译器可能不支持)
如果在编译类时需要常量,则使用枚举
class Example{
enum{length=4};
int array[length];
};
特例:
const static int(enum)允许类内初始化(老式编译器可能不支持)
如果在编译类时需要常量,则使用枚举
class Example{
enum{length=4};
int array[length];
};