class foo
{
public:
foo();
~foo();
static const int i= 10; //合法
static const int iarray[3] = {0,2,5}; //VC会报错:c2334
};
正确初始化方法:
class foo
{
public:
static const int iarray[3];
};
const int foo::iarray[3] = {0,2,5};
注意:
class foo
{
public:
foo();
~foo();
const int iarray[3]; //错误的语法
};
因为const变量不能在类中初始化,而非静态的const 数组又必须即时初始化,这是一对矛盾,所以有语法错误
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。