我想创建一个 QObservableCollection
包装 QList
(使用内部 QList
实现并转发所有调用,同时为更改集合的函数发出某种 CollectionsChanged 信号),但我看到 QList
不继承自 QObject
.
我相信你需要继承自 QObject
发出 Qt 信号。所以我需要继承 QObject
对于我的 QObeservableCollection。
但是QList
和 QVector
并且其他 Qt 集合不继承自 QObject
,所以我想他们一定是某种缺点或制作收藏品的问题。
我看到 QSignalSpy 继承自 QObject
和 QList<QList<QVariant>>
所以也许他们只是没有看到从 QObject 继承的理由?
最佳答案
有一个非常重要的技术原因:moc
无法处理模板,这对于通用容器类型来说几乎是必需的。
关于c++ - 为什么 QList 不是从 QObject 派生的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21281990/