ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • const, * ..
    플밍/C++ (overview) 2012. 1. 3. 22:45
    2006/07/26 02:14





     const int p = 10; 

     int const p = 10; (같은 표현)


     p = 10;

     

    ------------------------------------------------------------------------------

    => 컴파일 에러  [p : const int p]

    ------------------------------------------------------------------------------

     

     const int *p;

     int const *p; (같은 표현) 


     int t=10,y=20;


     
     p = &t; 


     p = &y;     <- p자체에 담긴 내용(주소값)은 변경 가능.

     

     

     *p = 20;    <- p에 담긴 내용(주소값)이 가리키고 있는 곳의 값을 변경 불가.

     

    ------------------------------------------------------------------------------

    => 컴파일 에러   [p : const int *p]

    ------------------------------------------------------------------------------

     

     int t=10,y=20;

     

     int *const p = &t;  

     

     *p = 20;      <- p가 가리키는 곳의 값은 변경 가능.

     

     p = &y;       <- p자체에 담긴 내용(주소값)은 변경 불가.

     

    ------------------------------------------------------------------------------

    => 컴파일 에러   [p : int *const p]

    ------------------------------------------------------------------------------

     

     int t=10,y=20;


     const int *const p = &t;   

     int const *const p = &t; (같은 표현)


     *p = 20;     <- p가 가리키는 곳의 값 변경 불가.


     p = &y;      <- p자체에 담긴 내용(주소값) 변경 불가.

     

    ------------------------------------------------------------------------------

    => 컴파일 에러   [p : const int *const p]

    ------------------------------------------------------------------------------

     

     

     

    * 포인터 선언이 있을때, 포인터 변수 이름 바로 앞에 const를 써주면,

    포인터 변수 자체를 상수화한다.(자체에 담긴 내용(주소값) 변경 불가)

    '플밍 > C++ (overview)' 카테고리의 다른 글

    동적 메모리 할당(malloc, new)  (0) 2012.01.03
    레퍼런스(&) , call-by-reference  (0) 2012.01.03
    namespace, (범위지정연산자)  (0) 2012.01.03
    매크로, inline  (0) 2012.01.03
    default 매개 변수  (0) 2012.01.03
Designed by Tistory.