【问题标题】:qt app.exec() segmentation fault core dumped [closed]qt app.exec()分段错误核心转储[关闭]
【发布时间】:2012-10-12 03:11:06
【问题描述】:

我在 QT 中编写了一个应用程序。该应用程序运行良好,但退出时我得到一个

Segmentation fault (core dumped)

如何解决这个分割问题?

【问题讨论】:

  • 这里没什么可做的。如果它发生在退出时,它可能与你的析构函数中的内存管理有关,例如释放一个已释放的指针。我建议使用gdb 加载核心转储并查看堆栈跟踪。
  • 我不知道转储在哪里?运行可执行文件的文件夹中没有转储文件。
  • 应该有一个核心文件,因为您的计算机确实告诉您“核心转储”。如果您没有看到它,请在gdb 中运行您的程序以开始。
  • 核心不会自动生成。需要指定 ulimit -c unlimited。
  • 我发现了问题所在。即使在 app.exec() 尝试引用一些被释放的指针之后,Boost asio 服务仍在运行。在 main.cpp 完成之前退出此服务时,错误已修复。还是谢谢。

标签: c++ qt segmentation-fault


【解决方案1】:

你应该发布一些代码,无论如何我想如果你在那里做错了什么,它可能是析构函数中的东西。特别是如果您使用 malloc/new 的基本内容(即整数数组)分配内存等等......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-28
    • 1970-01-01
    • 2012-11-20
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多