c 中的 關鍵字const 使用方法及說明

2021-06-21 21:25:17 字數 1416 閱讀 2581

const定義的 本質:唯讀變數,即不可修改的變數。所以,它永遠不可能是常量。

用法及說明:(想要的都有,不分類,自己看)

const int i                        // i 是 const

int cost i                          // i 是 const

const int*  i                     // *i 是const,i不是

int const *i                      //*i 是const,i不是

int * const i                      //i是const,*i不是

const int* const i           //i和*i都是const

int const * const i          //i和*i都是const

int const *p1,p2             //*p1是const,p2是const

int *const p1,p2          //p1是const,p2不是

int const * const p1,p2  //*p1是const ,p1是const,p2是const

void function(int const * i)  //引數*i為const,此引數在函式內不可修改

void function(int * const i)   //引數i為const,此引數在函式內不可修改

void function(const class & t)//引用引數t為const,此引數在函式內不可修改

const int function()//無意義,給函式返回乙個值的過程本身就是賦值

const int * function()//返回乙個可修改的指標位址,但指標指向的內容不可更改,呼叫函式時,執行const int*ptr=fuction(),跟const修飾變數乙個用法。

int *const function()//返回乙個不可修改的指標位址,但指標指向的內容可以修改,呼叫函式時,執行int*const ptr=function()。

class aaa

;      //:後面這叫做初始化列表

void func1();

void func2() const;              //【二、const修飾成員函式】它不改變類的成員變數,也不能呼叫非const成員函式。

const  aaa  aaa;                 //【三、const修飾類物件】定義了乙個靜態物件,只能呼叫const成員函式。

aaa.func1();                        //不能呼叫非const成員函式,是錯的

aaa.func2();                        //可以呼叫const成員函式

c 關鍵字const使用方法總結

const 大致意思是 我承諾不改變這個值 主要用於說明介面,這樣在把變數傳入函式時就不必擔心變數會在函式內被改變。編譯器負責確認並執行const的承諾。或者可以說在當前作用域內值不發生改變。const的語法雖然變化多端,但並不高深莫測,如果乙個被指物是常量,const可以寫在型別之前,也可以寫在型...

C中const關鍵字

const 用法 定義常量,修飾指標 函式的輸入引數和返回值,把定義或者修飾的變數屬性設為唯讀。本質上它只是在全域性資料段或者棧中定義的是乙個唯讀的常量,不是真正位於字串常量區。所以關鍵字const 並不能把變數變成真正的常量,事實上還是可以改變 const 定義的變數的值。const 的目的是為了...

C 中const關鍵字

一 const修飾指標變數 int num 0 1.const在 前面,表示const修飾指標指向的內容 const int p intconst p 2.const在 後面,表示const修飾指標變數 int const p 二 const修飾成員函式首先來看一下普通成員函式 class a fu...