Когда я выполняю команду throw в своей родной библиотеке, мое приложение для Android падает. Поддерживает ли Android эти вызовы? Он никогда не достигает улова.Try Catch в исходной библиотеке Android не работает
try
{
__android_log_print(ANDROID_LOG_ERROR, "nativeLib", "throw");
throw;
}
catch (...) {
__android_log_print(ANDROID_LOG_ERROR, "nativeLib", "catch");
}
Я недавно перешел с gnustl_shared на C++ _ общие, я не уверен, если это не имеет ничего общего с моей проблемой.
Руководства разработчика говорят, что gnustl_shared имеет исключения по умолчанию, но C++ _ shared не поддерживает. Я включил флаг -fexceptions, как описано в руководстве. https://developer.android.com/ndk/guides/cpp-support.html
Возможный дубликат [почему бросок «ничего» вызывает завершение программы?] (Http://stackoverflow.com/questions/651154/why-does-throw-nothing-causes-program-termination) –
Я откинул назад потому что это принципиально меняет смысл вопроса и текущего ответа. – njzk2