#include<iostream>
using namespace std;
class Test
{
private:
const int a; //const 成员变量只能在构造函数的成员初始化列表中初始化,不能在函数体中和其他地方
static int b; //static 成员变量需要在全局范围内初始化,格式: 类型名 类名::变量名 = 值
static const int c;//static const 成员变量需要在全局范围内初始化,格式:类型名 类名::变量名 = 值
public:
Test() :a(1){} //正确
//Test(){a = 1;} //错误
int get_a()
{
return a;
}
int get_b()
{
return b;
}
int get_c()
{
return c;
}
};
int Test::b = 2;
const int Test::c = 3;
int main()
{
//int Test::b = 2; 错误
//const int Test::c = 3; 错误
Test temp;
cout << temp.get_a() << endl << temp.get_b() << endl << temp.get_c() << endl;
cin.get();
return 0;
}C++中类const、static、static const成员变量
原文:http://blog.csdn.net/linukey/article/details/45175805