C++ static、const和static const變數 以及它們的初始化

pengfoo發表於2012-10-07
#include <iostream>
using namespace std;

class Test
{
public:
	//Test():a(0){}
	Test();
	enum {size1=100,size2=200};
private:
	const int a;//只能在建構函式初始化列表中初始化,,,不能用其他方式(如和staic ,const static 類似的方式)
	static int b;//在類的實現檔案中定義並初始化
	const static int c;//與 static const int c;相同。
};

Test::Test():a(0){}
int Test::b=0;//static成員變數不能在建構函式初始化列表中初始化,因為它不屬於某個物件。而且改行不能再在前面加上static
const int Test::c=0;//注意:給靜態成員變數賦值時,不需要加static修飾符。但要加const

int main()
{
	Test *pt = new Test();
	delete pt;
	
	return 0;
}                


如上程式碼:具體參考:http://blog.csdn.net/yjkwf/article/details/6067267

規矩還是挺多的:

具體的規矩可以看上面的程式碼註釋

相關文章