天天看点

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
           

继续阅读