我有一个用C++ (Qt)编写的长时间运行的控制台应用程序。如果发生assert -我的应用程序崩溃得很厉害。所以我需要知道哪个断言失败了。我需要知道这一点,因为我必须找到并修复代码中有buggy的部分。我如何才能做到这一点?我不希望我的应用程序崩溃,但如果失败的断言导致崩溃-我想知道哪里出了问题,哪里出了问题。谢谢。:) PS:我可以log断言名称和应用程序崩溃时的位置吗?
PS2:发生的断言是内部的,例如Qt。
发布于 2013-03-13 18:15:10
可以使用命令行参数将输出重定向到文件
2>&1 | tee ~/console.txt 这将把stderr和stdout复制到一个txt文件中。Q_ASSERTS被打印到stderr,因此您现在应该能够看到输出并诊断问题
https://stackoverflow.com/questions/15381658
复制相似问题