MS Consolas : http://www.microsoft.com/downloads/det ··· ang%3Den
Bitstream Vera Sans Mono : http://www.gnome.org/fonts
Proggy Clean : http://www.proggyfonts.com
DejaVu Sans Mono : http://sourceforge.net/projects/dejavu
- C Type Casting
: (T) : 무분별한 형변환으로 이루어지는 실수로 인해 심각한 오류를 발생 시킬 수 있다.
- C++ Type Casting
: static_cast<T> : 일반적인 형변환. 레퍼런스간의 형변환이 허용되며, 업캐스팅/다운캐스팅을 허용한다.
: dynamic_cast<T> : 상속관계를 가지는 레퍼런스간의 형변환이 허용되며, 업캐스팅과 안전한 다운캐스팅만 허용된다.
: const_cast<T> : 상수성을 변경하고 싶을 때 사용한다. 상수 지시 포인터에서 비상수 지시 포인터. 그리고 반대로도 가능하다.
: reinterpert_cast<T> : 강제형변환. 상속여부의 상관없이 강제적으로 캐스팅 된다.
- Reference
: Down Casting : 기반 클래스 포인터를 파생 클래스 포인터로 변경하는 형변환을 말한다.
: Up Casting : 파생 클래스 포인터를 기반 클래스 포인터로 변경하는 형변환을 말한다.
: Safe Casting : 잘못된 캐스팅의 리턴값은 NULL이다. (dynamic_cast<T>)
: dynamic_cast<T> : 안전한 다운캐스팅이 가능하다. 이는 RTTI 중 하나이기도 하다.
: reinterpert_cast<T> : 다중 상속된 클래스 형변환에서 문제를 발생 시킨다. 주소 연산을 하지 않는다.
원문 : Google C++ Style Guide
번역 : Google C++ Style Guide ( 슈아이한님 감사합니다. )