1 2 3 4 5 6 | int i1 = 10; int i2 = 20; const int* p = &i1; p = &i2; //OK *p = 30; //FAIL | cs |
위와 같이 사용할 경우 변수 p가 가리키는 변수가 const 타입이 되므로
*p 즉, i2의 값을 변경 할 수 없음
1 2 3 4 5 6 7 | int i1 = 10; int i2 = 20; int* const p = &i1; p = &i2; //FAIL *p = 30; //OK | cs |
int 타입을 가리키는 p는 const 속성을 갖는다는 의미 이기 때문에
p의 값을 변경 할 수는 없지만 p가 가리키는 변수의 값은 변경이 가능