질문:
컴파일러가 지원하는지 여부를 컴파일 타임에 어떻게 확인할 수 있습니까? C 11의 특정 기능 표준?
답변:
신뢰할 수 있는 한 가지 방법은 __cplusplus 상수를 사용하는 것입니다. C 컴파일러는 지원하는 표준 버전을 반영하도록 이 상수를 설정해야 합니다. 예:
#if __cplusplus <= 199711L #error This library needs at least a C++11 compliant compiler #endif
이 코드는 컴파일러의 C 버전이 199711L 이하인 경우 C 11 지원을 사용할 수 없음을 나타내는 오류를 생성합니다.
그러나 일부 공급업체에서는 부분적인 C 11 지원을 구현한 후 즉시 __cplusplus를 업데이트하지 못할 수 있습니다. 이러한 경우 특정 C 11 기능을 세부적으로 감지하려면 Boost의 정의를 사용하는 것이 좋습니다.
위 내용은 컴파일 타임에 C 11 컴파일러 지원을 어떻게 확인할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!