簡單好玩的C++關鍵字mutable

mutable是一個好玩的C++關鍵字,也是我第一次遇到。於是查了查msdn,結果發現果然是好玩的關鍵字。
首先,它只能修飾非const,非static的類數據成員。
其次,它用來突破const函數。
再次,它就這麼一個功能。

class X
{
public:
	// 在邏輯上GetFlag只是獲取我的m_flag狀態,所以修飾爲const
	// 但是,我需要知道其中一些動態的狀態,所以mutable就誕生
	// 了,而且專門爲此而誕生。
	bool GetFlag() const
	{
		m_accessCount++;
		return m_flag;
	}
private:
	bool m_flag;
	// 本關鍵字的遊戲規則是非const,非static
	mutable int m_accessCount;
};


總結:思路簡單,設計簡單,功能簡單。

發佈了76 篇原創文章 · 獲贊 16 · 訪問量 47萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章