const
- 常量由关键字的
const
表示。 -
const
的最初的动机是取代预处理器#defines来进行值代替。 - 但是逐渐的被用于指针,函数变量,返回类型,类对象以及成员函数
- 在运行的期间产生的值初始化一个变量,使用const指定在变量的声明周期内是不变的。
值代替
- 预处理器可以不受限制的建立宏并用它来代替值。
- 预处理器没有类型检查概念也没有类型检查功能,C++中通过使用const值而避免
const 指针
const修饰指针正指向的对象。const int* u;
指向const的指针。
指针正指向的对象是不能改变的
等价于 int const * u;
const修饰在指针里储存的地址。
int d = 1;
int* const w = &d;
- const 指针
- 指针里储存的地址不能改变,但是地址指向的内容可以改变。