Я пытаюсь определить во время компиляции, были ли исключения отключены с помощью переключателя (-fno-exceptions
). Я попытался оценить:обнаружить во время компиляции, исключены ли исключения
noexcept(throw)
Но это не будет компилироваться, если исключения будут отключены при обоих НКУ и лязгом.
EDIT: Взгляните here.
Как насчет установки '-DNO_EXCEPTIONS' на то же место» re установить '-fno-exceptions' и проверить' #ifdef NO_EXCEPTIONS'? --- Поскольку отказ от поддержки исключений является несоответствующим, поведение, определяемое реализацией, я сомневаюсь, что существует «стандартный» способ обнаружения отключенной поддержки. Опять же, вы никогда не знаете с C++. ;-) – DevSolar
Существует, я только что нашел его: макрос [__cpp_exceptions] (https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_exceptions.html) – user1095108
... который не определен стандартом, но реализация (GCC). что и требовалось доказать ;-) – DevSolar