关于 QVariant::type() 的文档说:



好吧,如果是这样,他们为什么不首先将其声明为返回 QMetaType::Type 呢?这样看来只会带来不必要的困惑。

文档没有解释声明函数返回错误类型的原因,有谁知道这些原因可能是什么?

最佳答案

首先是带有 type 枚举的 QVariant 支持的类型。
然后是 QMetaType,它带有自己的 type 枚举用于支持的类型。

所以 QVariant 被改变了,类型对齐了,所以它自己的 type 枚举可以被弃用,它依赖于 QMetaType 的类型信息。但是,出于源兼容性原因,无法更改返回类型。

Qt6 的返回类型可能会更改,但源不兼容的更改取决于具体情况,因此必须讨论更改的影响和好处。

关于c++ - 为什么 QVariant::type() 在应该被解释为 QMetaType::Type 时返回 QVariant::Type?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32009630/

10-13 09:41