최근에 두 종류의 크기가 같은지 확인하기 위해 C++에서 컴파일 타임 어설 션이 필요했습니다.C++에서 컴파일 타임 어설 션?
#define X_ASSERT(condition) ((void)sizeof(char[1 - 2*!!(condition)]))
내가 지금처럼 사용할 :
나는 (리눅스 커널에서 온 것으로 언급) 웹에 다음 매크로 발견X_ASSERT(sizeof(Botan::byte) != sizeof(char));
이 날 호기심 도착을 -이 비록 은으로 작동합니다. 더 깨끗한 방법이 있습니까? (분명히 한 가지 이상의 방법이 있습니다.) 특정 방법에는 장단점이 있습니까?
감사합니다. C++ 0x가'static_assert'를 얻는 것을보고 기쁩니다. 전에 그것에 대해 읽은 것을 기억하지 못합니다. ;) –