C++ 關鍵字

1.volatile

        volatile 修飾符的主要目的是提示編譯器 該對象的值可能在編譯器未監測到的情況下被
改變 因此編譯器不能武斷地對引用這些對象的代碼作優化處理。

       將成員函數聲明爲volatile volatile限定修飾符在 3.13 節介紹 如果一個類對象的值可能被修改的方式是編譯器無法控制或檢測的。例如 如果它是表示 I/O端口的數據結構則把它聲明爲 volatile 與 const 類對象類似 對於一個 volatile類對象 只有 volatile 成員函數 構造函數和析構函數可以被調用 
class Screen {
public:
 char poll() volatile;

  //..........
};
char Screen::poll() volatile { ... }

2.explicit

防止隱式類型轉換

3.mutable

mutable 修飾的數據成員永遠不會是const 成員,即使它是一個const對象的數據成員。mutable成員總可以被更新,即使是在一個const成員函數中。

class Screen {
public:
 // 成員函數
private:
 string _screen;
 mutable string::size_type _cursor; // mutable 成員
 short _height;
 short _width;
};

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章