顶层
所谓顶层
而底层
我理解的
const
和底层的const
主要是针对指针来说的。所谓顶层
const
是指指针的不变性,即指针指向的位置不变!int *const p = &i;
则p这个值不会再变,在这里你可以通过其他方式改变i这个值,比如说你可以直接赋值i = 9;
。这样const
也拿你没办法。而底层
const
则是指指针指向的对象或者内置类型不变,const int *p = &i;
则这里的i的值就不许再变了,但是你仍然可以改变p
,比如说你可以这样const int *p = &j;
我理解的
const
是一种约定,是说我用了const
就不会改变变量的值了,而其他人乱动我也没办法。