為什麼我們在 C++ 中使用 volatile 修飾符?


volatile 有兩個含義 -

  • 變數的值在沒有您的程式碼修改的情況下都可能會發生變化。因此,無論何時編譯器讀取變數的值,它都不認為該值與上次讀取的值相同,也不認為該值與上次儲存的值相同,而必須重新讀取它。

  • 將值儲存到 volatile 變數中的行為是一個可以從外部觀察到的“副作用”,因此編譯器不允許刪除儲存值的行為;例如,如果將兩個值按行儲存,那麼編譯器實際上必須將該值儲存兩次。

比如

i = 2;
i = i;

編譯器必須儲存數字 2,讀取變數 I,將讀取到的變數儲存到 i 中。

您可以在此處找到有關 volatile 關鍵字的更多詳細資訊:www.geeksforgeeks.org/understanding-volatile-qualifier-in-c/

更新於: 30-Jul-2019

391 人瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.