我知道你不能在不使用构造函数的情况下直接初始化类中的成员变量(静态常量除外)。
但只是想知道这背后的原因是什么。下面是代码片段
如果有任何机构可以提供帮助
class a
{
int c=5;
// giving error error C2864: 'a::c' : only static const integral data members can be
// initialized within a class
int b;
public:
a():c(1),b(2){}
void h()
{
printf("%d,%d",c,b);
}
};
int main()
{
a l;
l.h();
getchar();
}