在看 c++ Primer 时看到了 关键字const 的用法,很详细,在这里记录下
以前只知道用const 修饰的 变量无法修改
例如 const int x = 443;
但是我们有时候可以看到
int x = 44;
const int *p1 = &x;
int * const p2 = &x;
都是指针有什么,这两个有什么区别呢?
const在前 不能使用指针p1 不能再修改 x的值
const 在后呢, 通过指针p2 可以修改x的值,但是p2 这个指针只能指向x,不能再指向别的变量的地址了,也就是说是 变量x的专属指针
以前在别人的代码里指针声明很多都有用到,现在回想起来都是有用意的,可以避免很多指针的乱用吧
尽量多用const
- const可以避免无意修改的数据的编程错误