C++ 프로그래밍

C++ static_assert

하늘흐늘 2021. 10. 30. 11:22
반응형

C++ 11에 추가된 것으로 기존 assert이 실행 시간에 오류를 검증하는데 비하여 static_assert은 컴파일 타임에 오류를 검증합니다. static_assert은 컴파일 타임에 오류를 검증할 수 없는 변수 값을 대입하는 경우 상수 값이 있어야 한다는 오류를 냅니다. 이런 특성을 가진 관계로 주로 템플릿 프로그래밍에서 타입 체크 등에서 사용됩니다. 비주얼 스튜디오에서는 코드 작성 중에 static_assert이 false일 경우 표시를 해주어서 편합니다.

사용 예는 아래와 같습니다.

static_assert(1<2);

char value = 'A';
static_assert(is_same<decltype(value), char>::value, "");
반응형