※ 引述《junshung@kkcity.com.tw (... (b) pic)》之銘言:
: 請問各位程式高手 , 書上歸類三種有關指標的const
: 看完仍似懂非懂 @@"
: (我還很弱 ^^")
: 1 指向常數指標
const int *ptr;
指向的 addr 的 value 不可更改,但 ptr 可更改其指向的 addr
也就是說 ptr 其 value 可更改, *ptr 其 value 不可更改
const int ii = 456;
const int i = 123;
const int *ptr = &i;
ptr = ⅈ // ok
*ptr = 789 // error
: 2 常數指標
int * const ptr;
和上面不一樣,剛好反過來
ptr 其 value 不可更改, *ptr 其 value 可更改
int i = 123;
int ii = 456;
int * const ptr = &i;
*ptr = 789; // ok
ptr = &ii // error
: 3 指向常數的常數指標
const int * const ptr;
二者均不可更改
: 尤其是1跟2 有點搞混 希望各位大大能給些例子說明它們的不同
: 謝謝
我是參考 Primer C++, 侯傑那本書第 102 頁那邊
有錯誤請指證 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.116.100.119