我们可以用诡计的方式显示异常的整个堆栈跟踪(函数+行),就像在C ++中的Java和C#一样吗?
我们可以使用宏来实现Windows和类似Linux的平台吗?
感谢
答案 0 :(得分:2)
不是没有平台特定知识或在每个功能中添加代码。
答案 1 :(得分:2)
在Windows上,可以使用Windows DbgHelp API完成,但要完全正确,需要进行大量的实验和研究。请参阅http://msdn.microsoft.com/en-us/library/ms679267(VS.85).aspx作为开始。我不知道如何在其他平台上实现它。
希望这有点帮助。
此致
Sebastiaan
答案 2 :(得分:1)
如果您在使用glibc的平台上运行,则可以使用backtrace()函数。这是C函数,但它们也适用于c ++返回跟踪。这当然不是便携式的,但我怀疑你会找到一个便携式解决方案,而不是每个功能都有额外的代码; - )
http://www.gnu.org/software/libc/manual/html_node/Backtraces.html