const int a; int const a; const int *a; int * const a; int const * a const; 之间的区别
2012-03-28 19:58
363 查看
const int a; int const a; 这两个写法是等同的,表示a是一个int常量。
const int *a; 表示a是一个指针,可以任意指向int常量或者int变量,它总是把它所指向的目标当作一个int常量。也可以写成int const* a;含义相同。
int * const a; 表示a是一个指针常量,初始化的时候必须固定指向一个int变量,之后就不能再指向别的地方了。
int const * a const;这个写法没有,倒是可以写成int const * const a;表示a是一个指针常量,初始化的时候必须固定指向一个int常量或者int变量,之后就不能再指向别的地方了,它总是把它所指向的目标当作一个int常量。也可以写成const int* const a;含义相同。
对于const int *a和int *const a,是不是可以理解为:const int *a中const修饰*a,但是&a可变,只要&a指向的目标是const类型就可以;而int *const a中const修饰&a,一旦指向则不能改写,但是可以修改*a的值?那么把你的理解里的&a都改成a就对了。
const int *a; 表示a是一个指针,可以任意指向int常量或者int变量,它总是把它所指向的目标当作一个int常量。也可以写成int const* a;含义相同。
int * const a; 表示a是一个指针常量,初始化的时候必须固定指向一个int变量,之后就不能再指向别的地方了。
int const * a const;这个写法没有,倒是可以写成int const * const a;表示a是一个指针常量,初始化的时候必须固定指向一个int常量或者int变量,之后就不能再指向别的地方了,它总是把它所指向的目标当作一个int常量。也可以写成const int* const a;含义相同。
对于const int *a和int *const a,是不是可以理解为:const int *a中const修饰*a,但是&a可变,只要&a指向的目标是const类型就可以;而int *const a中const修饰&a,一旦指向则不能改写,但是可以修改*a的值?那么把你的理解里的&a都改成a就对了。
相关文章推荐
- const int a; int const a; const int *a; int * const a; int const * a const; 之间的区别
- const int a; int const a; const int *a; int * const a; int const * const a ; const int * const 之间的区别
- const int a; int const a; const int *a; int * const a; int const * a const; 之间的区别?
- const int* pt || int* const pt || const int* const pt 之间的区别
- const int* pt || int* const pt || const int* const pt 之间的区别
- static_cast、dynamic_cast、reinterpret_cast和const_cast之间的区别,char int *p,int const*p
- 关于const的问题 const int *a; int const *a; int *const a; 的区别
- const int* a; int const *a ; int* const a 三者之间的区别
- define宏定义和const常量定义之间的区别
- 运算转换符static_cast,const_cast,reinterpret_cast,dynamic_cast之间的区别
- const int *p, int *const p的区别
- static_cast、dynamic_cast、reinterpret_cast和const_cast之间的区别
- const int *与int *const 的区别
- const int *p与int *const p的区别
- const int *a, int const *a,int * const a,区别,指针数组,数组指针,声明与定义
- const int *pi 与 int *const pi的区别 (不错)
- C/C++_ const int * 与 int *const的区别
- define宏定义和const常量定义之间的区别
- C++中static_cast、const_cast、reinterpret_cast的用法举例,附带举例说明强制类型转换时int和int&的区别
- const int *p、int *const p、const int* const p的区别