今天遇到比较低端的一个问题,就是成员的初始化问题,编译器也无法验证,不同的编译器有些能过有些不能过,我也不知道为什么,总是我们以vs为准吧,以为我们用的环境就是它,话不多说,解决方案如下:
在类中 static const double PI=3.1416;
error:只有静态常量整型数据成员才可以在类中初始化
常整型静态数据成员可以在类中直接初始化,而常实型静态数据成员不可以
class circle
{
int a; // 普通变量,不能在类中初始化
static int b; // 静态变量,不能在类中初始化
static const int c=2; // 静态常量,可以在类中初始化
static const double PI=3.1416;//error C2864: 只有静态常量整型数据成员才可以在类中初始化(但在code block上编译是可以通过的,实在无语!!)
} ;
b可以在类外进行初始化,且所有对象共享一个b的值:
int circle::b = 2;
Cocos2d-x 3.1.1 学习日志2--error:只有静态常量整型数据成员才可以在类中初始化,布布扣,bubuko.com
Cocos2d-x 3.1.1 学习日志2--error:只有静态常量整型数据成员才可以在类中初始化
原文:http://blog.csdn.net/wxq_wuxingquan/article/details/37595667