c 中const關鍵字使用的總結

2021-08-21 17:23:17 字數 929 閱讀 4748

作用

說明參考**

注意定義常量

常量不可修改

const int val = 5;

int const val = 5;

與#define巨集定義常量的區別:

(1)const常量具有型別,編譯器可以進行安全檢查,推薦使用。

(2)#define巨集定義只是簡單的字串替換。

修飾指標

(1)const int* p;  //指標p指向的內容是常量,不可改變。

(2)int* const p;  //指標本身是乙個常量,不可改變。

(3)const int* const p;  //指標本身和指向的內容都是常量,都不可以改變。

區分方法,*p代表物件內容,p代表指標本身,看const修飾的是哪個。

在函式中使用const

修飾函式引數

void function(const int var);  //表明引數在函式體內不能被修改,但此處沒有任何意義,var本身就是形參,在函式內不會改變。

包括傳入的形參是指標也是一樣。

(1)使用引用引數,可以防止建立副本,減少記憶體開銷,同時可以在函式中對引用引數修改,函式結束後,引用引數的修改仍然存在。

(2)如果為了防止對引用引數進行修改,可以對該引數加上const關鍵字。

修飾函式返回值

與修飾普通變數和指標意義差不多,很少使用。

在類中使用const

修飾類成員變數

class a

(1)成員常量不可被修改。

(2)只能在初始化列表中被賦值。

修飾類成員函式

class a

(1)常成員函式, 它不改變物件的成員變數.      代表唯讀函式,增加程式的可讀性。                 

(2)不能呼叫類中任何非const成員函式。

參考:

const關鍵字總結c

const成員函式只能呼叫const成員函式 const成員函式中不能改變成員變數的值,但是可以訪問所有變數 非const函式可以呼叫const函式 因為非const可能會修改屬性值,所以在const物件情況下,非const方法不能被呼叫,只能呼叫const方法 const函式可被非const過載,...

關鍵字const的使用總結

1.const是一種型別修飾符,用於說明永不改變的物件,const物件一旦定義就無法再改變,所以const物件必須初始化。2.頂層const與底層const區別 位於 左側為底層const,位於 右側為頂層const 頂層const意味著記憶體本身儲存的資料是常量,如int const a 3 即變...

關鍵字的用法 C 中const關鍵字用法總結

ark2000 看完了c primer的基礎篇,對const還是有點陌生,在這裡小小地總結一下吧。在變數的定義前加上const修飾符即可完成const物件的建立。const int val 5 const變數的值不能改變。val 5 error assignment of read only var...