Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
这里有一个类似的问题,正在寻找一种解决方法和一个很好的指南,它描述了 Qt 中的元对象系统。但这并不能直接解释为什么不能在元对象系统中使用模板类。这是一个令人讨厌的限制。
有谁知道为什么?
在标准 Qt 中这是不可能的*,对于 Qt,因为这些类 moc 需要能够预处理类并生成所需的元数据结构。这是在编译之前完成的,对于模板类,这意味着类型还没有真正定义。
但是,有些事情是可能的:
*) 当然没有什么是不可能的......如果其他一切都失败了,你也可以实现 moc 提供的一切......