const位置的含義

2021-10-01 14:21:10 字數 607 閱讀 4050

int num = 1024;

const int num2 = num1; //只能第一次賦值

num2 = 2048 // 報錯

const int * p = # //const 在 * 前面時,指標的位置可以修改,但不能通過指標修改指向的變數

int const * p = # //同上

int * const p = #//const 在 * 後面時,指標的位置不可以修改,但可以通過指標修改指向的變數

int const * const p = &num //const 在 * 兩側時,指標的位置不可以修改,也不能通過指標修改指向的變數

void fun(const int num) //函式體內不可以修改num的值

void fun(const object &o) //不能修改o的成員變數,也不能呼叫o的非const成員函式 ,不需要o的乙個副本,提高效率

const object & fun(const object &o) //返回應用,不需要建立o的副本,提高效率

class obj

private:

int a;

}

const 不同位置的不同含義

型別宣告中const用來修飾乙個常量,有如下兩種寫法 1 const 在型別前面 const int nvalue nvalue 是const const char pcontent pcontent是 const,pcontent可變 const char pcontent pcontent是 c...

const 不同位置的不同含義以及使用方法

一 一般用法 對於乙個變數使用const使之變為常量 const int a 0 二 對於指標 一句話總結 在誰的前面就是修飾誰 1 如果想要讓指標所指位置的內容不能修改則應該如下定義 前面放置const int a 0 const int b 1 const int p p a 可以將非const...

const物件的位置問題

const修飾引數,引數不可修改 const修飾函式返回值,函式返回值不可修改 const修飾函式體時,函式體內不可修飾物件的任意成員,並且在函式體內不可呼叫非const成員函式,會有語法錯誤 const修飾物件時,物件不可呼叫修改自己的成員函式,並且只可以呼叫帶const的成員函式 不管char ...