我需要将Qt遗留代码从4转换为5.1现在我在visualstudio2010:中有编译错误
SingleItem* item = qVariantValue<SingleItem*>(index.data());
给我:
.cpp(63):错误C2065:"qVariantValue":未声明的标识符
当我转到标题时,我看到:
#if QT_DEPRECATED_SINCE(5, 0)
template<typename T>
inline QT_DEPRECATED T qVariantValue(const QVariant &variant)
{ return qvariant_cast<T>(variant); }
template<typename T>
inline QT_DEPRECATED bool qVariantCanConvert(const QVariant &variant)
{ return variant.template canConvert<T>(); }
#endif
好的。。。那么替代品是什么呢?
请参阅兼容性说明。
对于qVariantValue
,请改用QVariant::value<T>
。
index.data().value<SingleItem*>();