c++

c++存儲

c++存儲

本節討論用於存儲變量或函數的c++存儲類。在c++中,存儲類定義了程序中使用的變量和/或函數的作用域(可見性)和生命期。這些說明符位於聲明類型之前。c++程序中可以使用以下存儲類。

Auto是所有本地變量的默認存儲。例如,{int x;自動int計數器;

  1. auto this is the default storage for all local variables. For e.g.
{int x;自動int計數器;}

2.注冊它定義了你想存儲在CPU寄存器而不是RAM中的局部變量。對於經常變化且需要頻繁訪問的變量,我們需要這樣做。但這是對編譯器的一個忠告。如果沒有CPU寄存器是空閑的,那麼寄存器指令將被忽略,變量被視為正常的局部變量。需要存儲在寄存器中的變量的大小最多可以等於寄存器的大小。此外,我們不能將一元的“&”操作符應用於它,因為它沒有內存位置。如。

{寄存器int求和;}

3.靜態類告訴編譯器在程序的整個生命周期內維護局部變量,而不是在每次它進入畫麵或離開幀時創建和銷毀它。因此,static允許變量在函數調用之間維護其值。在global變量前使用靜態修飾符會導致其作用域被限製在聲明它的文件中。所以它變成了文件作用域。對於c++,類的靜態數據成員將使該類的所有對象共享該靜態數據成員。類似地,類的靜態成員函數隻允許訪問靜態數據成員或其他靜態成員函數,它們不能訪問類的非靜態數據成員或成員函數。

4.Extern這個類用於給出全局變量的引用,以便使它對構成項目一部分的所有程序文件可見。變量聲明前的關鍵字“extern”告訴編譯器這個變量名之前在存儲位置定義過。對於多個文件的情況,您定義了一個全局變量或函數,它也將在其他文件中使用,然後在另一個文件中使用extern來提供已定義變量或函數的引用。需要記住的一點是,extern用於在另一個文件中聲明全局變量或函數。

5.Mutable僅適用於類對象。mutable修飾符作為對象的成員來覆蓋const成員函數,即可變成員可以被const成員函數修改。

Baidu
map