출처 : The C++ Programming Language ( 206p )

- static_cast
  : 관련이 있는 타입끼리의 변환을 수행한다.
    a. 같은 클래스계통안의 포인터타입끼리의 변환
    b. 정수타입을 나열자(enum)타입으로 변환
    c. 실수타입을 정수타입으로 변환

- reinterpret_cast
   : 관련되지 않은 타입 사이의 변환
    a. 정수를 포인터로 둔갑
    b. 가리키는 객체의 타입이 다른 포인터끼리 변환
   => 타입변환의 위험성을 고스란히 프로그래머가 책임져야함 ( 이식성도 않좋은편 )

- dynamic_cast
  : 런타임에 점검이 들어가는 변환
  : 주로 상속관계의 클래스들 사이에서 변환용도

- const_cast
  : const와 volatile 속성을 제거함

static_cast외에는 그닥 써보질 않아서 헤깔려서 정리해둠.. 허당이라고 해도 할말없음;
Posted by 자갈공명 zagalnet

댓글을 달아 주세요