const修飾引數,引數不可修改
const修飾函式返回值,函式返回值不可修改
const修飾函式體時,函式體內不可修飾物件的任意成員,並且在函式體內不可呼叫非const成員函式,會有語法錯誤
const修飾物件時,物件不可呼叫修改自己的成員函式,並且只可以呼叫帶const的成員函式
不管char * 前後是否帶const,他定義的指標賦值後,都不可以利用該指標修改該字串!
const char * p = "dddd";
//p[0] = '1'; //錯誤
p = "ddds"; //正確,因為p變成儲存"ddds"字串的首位址了,並非是改變了其指向內容的值
coutq[0] = '1'; //錯誤
coutw[0] ='1'; //錯誤
注意:非const物件可以呼叫帶const的成員函式
const位置的含義
int num 1024 const int num2 num1 只能第一次賦值 num2 2048 報錯 const int p const 在 前面時,指標的位置可以修改,但不能通過指標修改指向的變數 int const p 同上 int const p const 在 後面時,指標的位置不可以...
const的位置與區別
乙個比較經典的問題 問以下兩種宣告的區別 1 const char p 2 char const p 這裡的 const 關鍵字是用於修飾常量,書上說 const 將修飾離它最近的物件,所以,以上兩種宣告的意思分別應該是 1 p 是乙個指向常量字元的指標,不變的是 char 的值,即該字元的值在定義...
const的位置與區別
乙個比較經典的問題 問以下兩種宣告的區別 1 const char p 2 char const p 這裡的 const 關鍵字是用於修飾常量,書上說 const 將修飾離它最近的物件,所以,以上兩種宣告的意思分別應該是 1 p 是乙個指向常量字元的指標,不變的是 char 的值,即該字元的值在定義...