C/C++const用法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/developer1024/article/details/79951152

常量

const int MAX = 128;

指针

const int * p 或 int const * p

写法:const 在*前
作用:指针不能修改所指向的内容,但是可以改变指向

int a = 0;
int b = 0;
const int * i = &a;
int const * j = &b; // 不要这样写,虽然能运算
*i = 1; // 错误
*j = 1; // 错误
i = &b; // 正确
j = &a; // 正确
int * const p

写法:const 在*后
作用:指针可以修改所指向的内容,但是不能改变指向

int a = 0;
int b = 0;
int * const i = &a;
*i = 1; // 正确
i = &b; // 错误
const int * const p 或 int const * const p

写法:前,后,各加一个const
作用:指针不能修改指向的内容,也不能改变指向

int a = 0;
int b = 0;
const int * const p = &a;
*p = 1;
p = &b;

引用

int & r

可以改变值

int a = 0;
int b = 0;
int & r = a;
r = 1; // 正确
r = b; // 正确
const int & r 或 int const & r

写法:const 在&前
作用:引用不能修改值,也不能改变引用

int a = 0;
int b = 0;
const int & i = a; 
int const & j = b; // 不要这样写,虽然能运行
i = 1; // 错误
j = 1; // 错误
i = b; // 错误
j = a; // 错误
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页