勵志

勵志人生知識庫

static和const的作用

static」和「const」是C++等程式語言中的兩個關鍵字,它們各自有不同的作用。

「static」關鍵字的主要作用包括:

修改變數或函式的存儲方式和作用域。當「static」用於全局變數時,它會把變數的作用域限制在定義它的檔案中,即該變數在其他檔案中不可見;當「static」用於局部變數時,它會延長變數的生命周期,使其在函式調用結束後仍然保留值,直到程式結束;在類中,「static」成員變數被所有實例共享,而「static」成員函式則屬於類而不是實例,可以通過類名直接訪問。

保持變數內容的持久。在類中,「static」成員變數和全局變數一樣,在程式開始運行時初始化一次,並存儲在靜態存儲區。

「const」關鍵字的主要作用包括:

指定變數為常量。防止變數的值被修改,在定義「const」變數時通常需要初始化,因為之後不會有機會改變它的值。

修飾指針。可以指定指針本身為「const」,或指針指向的數據為「const」,或二者同時為「const」;例如,「const int *p」表示指針指向的內容不可修改,而「int *const p」表示指針的指向不可修改,但指向的內容可以修改。

修飾函式參數。表明參數是輸入參數,在函式內部不能修改其值。

修飾類的成員函式。使函式成為常函式,不能修改類的成員變數;也可以修飾函式的返回值為「const」,確保返回值不會被修改。

總結來說,「static」和「const」是用於控制變數或函式的可見性、生命周期、值的變化以及存儲方式的關鍵字,它們在編程中有助於提高代碼的安全性和可維護性。