当前位置:  开发笔记 > 编程语言 > 正文

在Linux上尝试/捕获分段错误

如何解决《在Linux上尝试/捕获分段错误》经验,为你挑选了2个好方法。

我有一个Linux C++应用程序,我想在解除引用之前测试对象指针的有效性.但是,由于分段错误,try/catch在Linux上不起作用.如何才能做到这一点?



1> Joao da Silv..:

分段错误不是异常(如Java的NullPointerException); 它是从OS发送到进程的信号.看一看的联机帮助页的sigaction有关如何安装的处理程序分段故障(SIGSEGV)指针.



2> Drew Dormann..:

如果你有一个场景,你的应用程序中的许多指针引用相同的有限生命周期对象,一个流行的解决方案是使用boost智能指针. 编辑:在C++ 11中,这两种类型都可以在标准库中使用

您可能希望使用shared_ptr负责对象生命周期的weak_ptr指针以及可能变为无效的其他指针.你会看到weak_ptr你有内置的有效性检查.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有