проверка на C 11 Поддержка
в C, определение того, поддерживает ли компилятор конкретные функции C 11, имеет решающее значение для обеспечения совместимости. Существуют некоторые методы, чтобы выполнить эту проверку во время компиляции, включая:
с использованием __cplusplus constant
__cplusplus, определяемая препроцессором, указывает на поддерживаемую стандартную версию C. Полем Например:
#if __cplusplusс использованием Boost defines
Boost предоставляет Defines (__has_feature (feature_name)), которые включают проверку для конкретных функций C 11, например:
#if __has_feature(cxx_automatic_resource_management) // C 11 has automatic resource management #endifпример: проверка на вариационные шаблоны
предположим, что вы хотите использовать вариальные шаблоны, функцию C 11. Вы можете проверить его поддержку, используя следующий код:
#ifndef VARIADIC_TEMPLATES_SUPPORTED #error "Your compiler doesn't support variadic templates. :(" #else templateclass Tuple { // ... } #endif
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3