본문 바로가기

카테고리 없음

[C++]포인터와 const의 사용


 

1
2
3
4
5
6
int i1 = 10;
int i2 = 20;
const int* p = &i1;
 
= &i2; //OK
*= 30; //FAIL
cs


위와 같이 사용할 경우 변수 p가 가리키는 변수가 const 타입이 되므로 

*p 즉, i2의 값을 변경 할 수 없음


 

1
2
3
4
5
6
7
int i1 = 10;
int i2 = 20;
int* const p = &i1;
 
= &i2; //FAIL
*= 30; //OK
 
cs


int 타입을 가리키는 p는 const 속성을 갖는다는 의미 이기 때문에

p의 값을 변경 할 수는 없지만 p가 가리키는 변수의 값은 변경이 가능