天天看點

C++中關于const限定符學習筆記

在定義變量時添加const關鍵字

const int size = ;   //定義size為一個常量
int i = ;
const int j = i;         //正确:j拷貝了i的值
int l = j;               //正确:常量值可以用于非常量初始化
           

const和引用聯合使用

int i = ;
const int &j =     //正确:j是一個常量引用,j的值将不能改變
const int &j = i*   //正确:同第二行結果相同,且j的值不會随i變化而變化
const int &j = i     //正确:j是一個綁定到i上的常量引用,且j的值會随i的變化而變化
int &l = j;          //錯誤:l不是常量引用,無法通過編譯
           

const和指針聯合使用

const int i = ;   
int *ptr = &i;                //錯誤:ptr是一個普通指針,不能指向const常量
const int *ptr = &i;          //正确:此時const在*前面,意思是ptr指向的是一個常量

int j = ;
int *const ptr = &j;          //正确:此時const在*後面,意思是ptr本身是個常量,他将一直指向j

const int * const ptr = &i;   //正确:上面二者的綜合,表示常量指針ptr指向常量i
           

繼續閱讀