关于const 关键字的理解
1、const 关键字起到什么作用在于其修饰的对象,若修饰的是指针,则指针无法修改,若修饰的是变量,则变量无法修改。
int num = 0; const int m = 10; //const 修饰 int ,const int 组合成复合类型,修饰变量m,则:m为常量,无法修改 int const n = 10; //const 修饰 n,则n为常量,int 修饰const n,则n为int类型常量。 m = 1; //修改值,不允许 n = 1; //修改值,不允许 const int *a = # //*修饰a,*a为值,a为指针,const int 修饰*a,则*a的为常量但a为变量。 int const *b = # //*修饰b,*b为值,b为指针,const修饰*b,则*b的为常量但b为变量,int 修饰const *b。 int* const c = # //const修饰c,*修饰const c,则c为指针,* const c 为值,c为常量,* const c为变量,int 修饰 * const c; const int* const d = #//第二个const修饰d,*修饰const d,则d为指针,* const d 为值,d为常量;const int 修饰 * const d;则*d为常量。 a = # //修改地址,允许 *a = num; //修改值,不允许 b = # //修改地址,允许 *b = num; //修改值,不允许 c = # //修改地址,不允许 *c = num; //修改值,允许 d = # //修改地址,不允许 *d = num; //修改值,不允许
2、应尽可能使用const
将引用参数声明为常量数据的引用原因如下:
1)使用const可以避免无意中修改数据的编程错误。
2)使用const使函数能够处理const和非const实参,否则将只能接受非const数据;
3)使用const引用使函数能够正确生成并使用临时变量。

浙公网安备 33010602011771号