Chromium 의 코드베이스를 다운로드 하고 WTF 네임 스페이스를 실행했습니다 .
namespace WTF {
/*
* C++'s idea of a reinterpret_cast lacks sufficient cojones.
*/
template<typename TO, typename FROM>
TO bitwise_cast(FROM in)
{
COMPILE_ASSERT(sizeof(TO) == sizeof(FROM), WTF_wtf_reinterpret_cast_sizeof_types_is_equal);
union {
FROM from;
TO to;
} u;
u.from = in;
return u.to;
}
} // namespace WTF
이것이 내가 의미한다고 생각하는 것을 의미합니까? 그럴 수는 bitwise_cast
어느 경우 여기에 지정된 구현은 컴파일되지 않습니다 TO
또는 FROM
아닌 POD 및 내장 ++ C 이상 (AFAIK) 더 강력한되지 않습니다 reinterpret_cast
.
내가 여기서 볼 수있는 유일한 빛 bitwise_cast
은 Chromium 프로젝트에서 아무도 사용하지 않는 것 같다는 것 입니다.