C++学习笔记:const int a, int const a, const int * ptr, int const * ptr, int * const ptr, const int * const ptr 辨析
const int a 与 int const a:
完全等价,其作用均为声明一个常量a,其值后续操作中不可被修改。(声明时必须进行初始化)
const int * ptr 与 int const * ptr:
完全等价,其作用均为声明了一个指向整型常量的整型指针ptr,使用过程中,指针指向内存空间的内容不可被修改,但指针的指向可以被修改。
int * const ptr:
声明了一个指向整型变量的常指针ptr,使用过程中,ptr所指内存空间的内容可被修改,但ptr指向固定不可被修改。
const int * const ptr:
声明了一个指向整型常量的常指针ptr,使用过程中,ptr所指空间的内容及ptr的指向均固定不可被修改。