QT QListWidget.addItem(..) - 当项目被释放或 QT 处理它时

发布于 2024-11-04 20:37:23 字数 180 浏览 0 评论 0原文

我使用 addItem(QListWidetItem *) 方法将堆上的项目添加到 QListWidget。

我找不到任何文档来指示 QT 是否管理项目内存并在从列表中删除该项目时释放它,或者我的应用程序代码是否应该跟踪并删除该项目。

有什么要求?任何人都可以向我指出有关 QT 和内存管理的简明文档,以避免泄漏。

I am adding items that are on the heap to a QListWidget, using the addItem(QListWidetItem *) method.

I cannot find any documentation indicating if QT manages the items memory and frees it when the item is removed from the list, or if the my application code should track and delete the item.

What is the requirement? Can anyone point me to concise documentation on QT and memory management to avoid leaks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

童话里做英雄 2024-11-11 20:37:23

该文档对此非常粗略。
事实上,QListWidget 获得了该项目的所有权并将其删除,或者例如在您 clear() 视图时尝试删除它。

在遇到类似问题后,我通过查看 Qt 代码发现了这一点。
文档中对此的唯一指示是发出警告,表明您不得两次添加相同的项目。

The documentation ist quite sketchy on this one.
Fact is, that the QListWidget takes ownership over the item and deletes it, or attempts to delete it if you clear() the view for example.

I found out about this by looking at the Qt code after I ran into a similar problem.
The only indication to this in the documentation is that there is a warning issued that you mustn't add the same item twice.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文