首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hxcpp如何捕获C++分段故障?

hxcpp如何捕获C++分段故障?
EN

Stack Overflow用户
提问于 2015-12-12 20:30:50
回答 1查看 184关注 0票数 1

我正在用haxe (一个迷你lisp计算器:D)编写一个命令行工具,在项目的这个时间点,我不能阻止用户对不存在的函数进行无效调用或使用假参数(这将需要额外的包装器),所以我考虑使用pythonic方法:让它崩溃并捕获错误。然而,我似乎不能以任何方式从haxe捕捉到C++分段错误。

示例:

代码语言:javascript
复制
hxlisp => (+ 1 2)
REPL.hx:33: Null Function Pointer
hxlisp => (hello)
make: *** [cpp] Segmentation fault: 11

代码是什么样子的?

代码语言:javascript
复制
public function loop() {
    while (true) {
        try {
            var inp:String = this.input();
            if (inp.length == 0) continue;
            var tree:SExpr = mkSexpr(parse(inp));
            var a = SExpr.List(sexpr_values(tree)[0]);
            var program = eval(a, env.std_env);
            this.output(program);
        } catch(eof:Eof) {
            break;
        } catch(error:Dynamic) {
            trace(error);
        }
    }
}

然而,似乎没有办法(或者我找不到它)将错误作为异常捕获并从中恢复。有没有人知道这种让它崩溃并从HaxeC++错误中恢复的方法有多大的可能性?请注意,在Neko或javascript中,这不是问题。

EN

回答 1

Stack Overflow用户

发布于 2015-12-12 20:40:44

不,无法捕获分段故障并从中恢复。分段错误是一个硬错误:您的进程试图访问无效内存,因此操作系统正在关闭该进程。您必须避免分段错误。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34239849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档