Я скачал ndk и нашел его в папке docs, CPLUSPLUS-SUPPORT.HTML.
I. Поддержка исключений C ++:
Набор инструментов NDK поддерживает исключения C ++, начиная с NDK r5, однако все C ++
исходники скомпилированы с поддержкой -fno-excptions по умолчанию, для
причины совместимости с предыдущими выпусками.
Чтобы включить его, используйте флаг компилятора C ++ '-fexceptions'. Это можно сделать
добавив следующее к каждому определению модуля в вашем Android.mk:
LOCAL_CPPFLAGS += -fexceptions
Проще говоря, добавьте одну строку в ваш Application.mk, настройка будет
автоматически применяется ко всем модулям NDK вашего проекта:
APP_CPPFLAGS += -fexceptions
ПРИМЕЧАНИЕ. Устаревшая цепочка инструментов «arm-eabi-4.4.0» предназначена для использования в обратном направлении.
совместимость с этим NDK не поддерживает исключения!
Таким образом, исключения, похоже, поддерживаются, если приложение компилируется с параметром -fexceptions. Таким образом, я понимаю, что код, скомпилированный с -fexceptions, сгенерирует std :: bad_alloc при неудачном выделении памяти.