java如何捕获SDBUS:C++中的错误异常?
我是C++新手。我试图用jni处理java应用程序中可能出现的一些错误。这是我的try/catch块: std::future<lib::LibVector> libVectorFuture;
try {
libVectorFuture = some::lib::getVector(param1, param2);
} catch (...) {
// report problem back to Java.
jclass Exception = env->FindClass("com/my/MyClientException");
env->ThrowNew(Exception, "Unable to get result from native getVector(String p1, String p2) method!");
}
lib::LibVector vector = libVectorFuture.get();
// here I'm using vector
当我使用有效的参数(param1,param2)时,它工作。但当我使用无效参数时,我会得到错误:
terminate called after throwing an instance of 'sdbus::Error'
和其他一些文本。此外,应用程序已停止。正如我在catch块中所理解的,我可以捕获任何错误,但它不会发生。为什么?如何捕捉任何错误
# 1 楼答案
最后,我写了一个解决方案。谢谢你的回复