C++:顶层const与底层const
- 顶层const,定义的变量就是常量
- 底层const,定义的变量所指向的对象是常量(因此底层const一般与指针和复合类型的基本类型部分有关)
int val = 20;
int *const cptr = &val;//常量指针,顶层const,作用的变量就是常量。常量指针必须初始化。
const int *ptrc;//指向常量的指针,底层const,作用变量指向的对象是常量
const int cval=10;//顶层const,定义的对象是常量
const int *const cptrc = &cval;//指向常量的常量指针,靠左侧底层const,靠右侧顶层const