최대 1 분 소요

개요

  • 컴파일 타임에 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);
          |