頂層 const 表示的是指標本身是乙個常量, 底層const 表示的是指標所指的物件是乙個常量。
頂層const拷貝遵守原則:1.const常量不能改變。
2.頂層可忽略。
const int a = 12;
int b= a;//頂層忽略
3 .非常量可向常量轉換,const int c = b;
底層const拷貝,則要求左值右值具有相同的身份。
int p = 1;
const int *p1=&p;
int *p2 = p1;//錯誤
繫結的原則: 常量不能繫結到非常量上,
非常量可以轉化 繫結到常量上。
int p = 1;
const int *p1=&p;
int *p2 = p1;//錯誤
頂層const 底層const
頂層const top level const 表示指標 或引用等 本身是個常量。底層const low level const 表示指標指的物件是乙個常量。一般當說到頂層或底層const的時候都是指標或者引用型別的,因為普通型別的const只能是底層的。例如 const int i 0 i 表示是...
頂層const 底層const
頂層const 底層const 個人理解 頂層cosnt 就是不影響變數型別,作為修飾符的存在。底層則會影響到變數型別 例如 int pi 這是乙個int 型別的變數,乙個指向int型的指標。int const p1 這還是乙個int 型別的變數 首先p1是乙個指標型別,指向的是int型別的值。才不...
C 學習,頂層const
頂層 指標本身就是乙個常量。底層 指標所指的物件是乙個常量。指標型別既可以指頂層const,也可以是底層const,這一點和其它型別相比區別明顯。int i 0 int const p1 i 不能改變p1的值,因為這是乙個頂層const const int ci 42 不能改變ci的值,因為這是乙個...