gpt4 book ai didi

qt - 使用 QGraphicsObject 与 QGraphicsItem 的惩罚?

转载 作者:行者123 更新时间:2023-12-04 15:37:55 33 4
gpt4 key购买 nike

我目前有一个基于 QGraphicsItem 的项目层次结构。

我想改为使用 QGraphicsObject,以便我可以在我的项目上放置属性。我不会使用信号/插槽或 QObject 的任何其他功能。

我听说你不应该从 QObject 派生,因为它“重”和“慢”。

为了测试影响,我从 QGraphicsObject 派生,向我的项目添加几个属性,并查看正在运行的应用程序的内存使用情况。我使用这两种风格创建了 1000 个项目,但我没有注意到内存使用量超过 10k。

由于我添加到我的项目中的所有内容都是属性,如果您使用信号/插槽,可以说 QObject 仅增加权重吗?

最佳答案

我认为这取决于你所说的重量是什么意思。如果您不担心所需的额外内存,也不担心 QObject 附带的所有额外方法和内容。 ,在你的情况下听起来像行李,那么是的。

但是,如果您只需要一种存储一些附加信息的方法,为什么不继承 QGraphicsItem 并添加一两个方法来存储必要的数据呢?通过这样做,我认为您将更好地传达代码的意图,这似乎比上述所有内容都更重要。

关于qt - 使用 QGraphicsObject 与 QGraphicsItem 的惩罚?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2292072/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com