Updated:

less than 1 minute read

개요

  • 컴파일 타임에 assertion 검사
  • C++11
    • static_assert ( bool-constexpr , message )
  • C++17
    • static_assert ( bool-constexpr )
  • bool-constexpr이 true면 영향이 없고 false면 컴파일 에러 발생


예제

  • 코드
     int main() {
     	static_assert(true, "111");
     	static_assert(false, "222");
        
     	static_assert(true);
     	static_assert(false);
        
     	return 0;
     }
    
  • 실행 결과
     main.cpp: In function ‘int main()’:
     main.cpp:3:23: error: static assertion failed: 222
         3 |         static_assert(false, "222");
           |                       ^~~~~
     main.cpp:6:23: error: static assertion failed
         6 |         static_assert(false);
           |