error: ‘qVariantValue’ was not declared in this scope

来源:互联网 发布:淘宝代销分账要钱吗 编辑:程序博客网 时间:2024/06/01 15:54


qVariantValue is deprecated

Your compiler will say

  1. error: ‘qVariantValue’ was not declared in this scope

This function is equivalent to QVariant::value<T>(value). Therefore if given a QVariant val rewrite the line

  1. QTime t = qVariantValue<QTime>(val);

to

  1. QTime t = val.value<QTime>();

This QTime enclosed in the angled brackets lets the compiler know what QVariant will return. However, if the variable is not a QVariable the type enclosed in the angled brackets should not be used(doing so will result in a vague compile time error). So given that m_color is of type QColor you will rewrite

  1. s.setValue(“color/favorite”, qVariantValue<QColor>(m_color));

to

  1. s.setValue(“color/favorite”, m_color.value());
转载于:http://ixiaomo.net/2015/03/19/qt5-4-1-%E7%BC%96%E8%AF%91upplay/
http://blog.sina.com.cn/s/blog_a6fb6cc90101endy.html
0 0
原创粉丝点击