각 캐스팅의 사용 용도.
static_cast - 상속 관계의 클래스 포인터 및 레퍼런스. 타입 체크 안함. 기본 타입 속성 변환.
dynamic_cast - 상속 관계의 클래스 포인터 및 레퍼런스. 타입 체크. RTTI 기능 필요.
const_cast - const, volatile 등의 상수 포인터 속성 변경.
reinterpret_cast - 포인터끼리, 포인터와 수치형간의 변환.
=============================================================
참고 자료 :
아마도 static_cast나 const_cast는 기본적인 캐스팅 방식이라 많이들 사용해 보아서 문제가 없겠으나, dynamic_cast, reinterpret_cast는 생소한 분들이 많을 듯하다.
그 분들을 고려 해서 따로 정리 했으니 참고 하고 싶은 분들은 아래 글을 참고 하시길 바란다.
[ reinterpret_cast ] 그 강력함을 알고 쓰자.
[ Dynamic_cast< class object*>() ] 애매한 동적캐스트에 대한 정의.
'[ Programing ] > C++' 카테고리의 다른 글
const, const int, int* const, const int* const n 설명 (0) | 2010.01.31 |
---|---|
parameter++; 과 ++parameter; 의 차이. (0) | 2010.01.31 |
[디버그 창에 문자열 출력] TRACE(); (0) | 2010.01.31 |
[컴파일시 표현식 유무 판단] CASSERT(); (0) | 2010.01.31 |
[표현식 유무 판단] ASSERT(); (0) | 2010.01.31 |