Exception Haxe未捕获全局异常处理程序

Exception Haxe未捕获全局异常处理程序,exception,error-handling,haxe,hxcpp,Exception,Error Handling,Haxe,Hxcpp,我正在为CPP目标使用Haxe编写应用程序的UI。我需要在应用程序崩溃之前拦截haxe错误/异常。 下面是导致应用程序崩溃的代码示例: @:final private function callFoo(classA : IInterface) : Void { if ((mClassLevelVariable != null) && (classA != mClassLevelVariable)) { throw new Error("Can no

我正在为CPP目标使用Haxe编写应用程序的UI。我需要在应用程序崩溃之前拦截haxe错误/异常。
下面是导致应用程序崩溃的代码示例:

@:final private function callFoo(classA : IInterface) : Void
{
    if ((mClassLevelVariable != null) && (classA != mClassLevelVariable))
    {
        throw new Error("Can not work with " + Type.getClassName(Type.getClass((classA))));
    }
}  

我需要在上面给出的错误导致应用程序崩溃之前拦截崩溃。我们在Haxe中是否有任何支持,如Java提供的
Thread.UncaughtExceptionHandler

您可以简单地将
main()
包装在一个try-catch中:

class Main {
    static function main() {
        try {
            entryPoint();
        } catch (e:Any) {
            // do something with e
        }
    }
}
那也差不多


请注意,在hxcpp中并非所有异常都可以通过这种方式捕获。例如,只有定义了
HXCPP\u CHECK\u pointer
时才能捕获空指针异常。

正是我想要的答案。假设我想在截获错误并完成所有需要的操作后使应用程序崩溃,那么我们如何才能做到这一点?例如,我截获了异常/错误,然后在服务器上记录了一些东西,然后我想使应用程序崩溃。那么,如果我们在入口点上有这种try/catch块,我们该怎么做呢?只要用
throw e重新抛出错误-不确定hxcpp是否允许保留调用堆栈,但某些平台允许:。