1.让指针指向一个常量对象,这样可以防止使用该指针来修改所指向的值。
即指向的内容固定,这个指针可以指向其他的地方,但是不能改变所指向的内容
例子:
int a = 1;
const int *p = &a;(初始化指针时别忘了取地址符)
a可以改变,p也可以改变;但是不能通过p改变a,即*p不能改变
这种指针可以指向常量对象,也可以指向不是常量的对象。但是const对象只能使用这种指向常量的指针;
将指针参数声明为指向常量数据的指针有两个优点
(1)使用const可以保护数据,避免由于无意间修改数据而导致的错误
(2)使用const使得函数能够处理const和非const实参,否则只能接收非const数据
所以如果条件允许,应该将指针形参声明为指向const的指针
2.将指针本身声明为一个常量,这样可以防止改变指针指向的位置,但是可以通过指针来改变内容的值
例子:
int a = 1;
int * const p = &a;
这里就是p不能改变,只能指向a的地址,但是a可以改变
3. const int * const p = &a;
这个就是固定指向地址和内容
posted on 2018-06-23 20:22 阅读( ...) 评论( ...)