是否可以初始化静态常量空数组,请参见下面的代码,初始化静态常量空数组
//CFoo.h
class CFoo
{
public:
CFoo();
~CFoo();
public:
static const int arr[];
};
//CFoo.cpp
const int arr[] = {0,1,2};
CFoo::CFoo(){}
CFoo::~CFoo(){}
编辑:
看来码是有效的,而对于后续问题,为什么我不能sizeof静态const数组,如:
sizeof(CFoo::arr);
有没有什么办法可以sizeof CFoo :: arr?
谢谢。
谢谢,但是有可能使用sizeof(CFoo :: arr)?有什么方法可以sizeof CFoo :: ARR或找到它的大小? – domlao 2010-11-04 06:24:16
令人讨厌,但对于经常更改此类值的长列表的特定位置,您可以定义VALUES {0,1,2} \ const int CFoo :: arr [] = VALUES; static const int check_cfoo_arr_size [] = VALUES;'和static断言:sizeof CFoo :: arr == sizeof check_cfoo_arr_size' ... :-(。 – 2010-11-04 06:41:59