QObject有多重?

dte*_*ech 15 c++ size qt sizeof qobject

我最近发布了一个关于QObject在典型使用场景中的开销的问题,但遗憾的是,这个问题已被关闭,因为它是另一个在技术上没有回答问题的问题的副本.

更糟的是,仓促"撒玛利亚人"谁礼貌地赶到关闭我的问题打断了答案,我跑了几个测试之后刚刚完成打字.由于我不能在原始问题中发布我的发现,我将在此处发布,以便其他可能需要该信息的人可以使用.

dte*_*ech 16

很多人都暗示QObject很重,但没有任何清晰的确切说明它有多重.所以我做了一些测量,不是很准确,所有值都是近似的.

  • 未使用的QObject~160字节
  • 单个自动连接没有参数~235个字节
  • 2个自动连接,无参数~315个字节
  • 3个自动连接,1个带3个参数~400个字节
  • 2个自动连接,1个排队,带3个参数~432个字节

这些数字应该考虑到我使用64位Qt构建.

因此,总之,QObject的开销确实非常重要.没有什么可以打喷嚏或过度使用.