警告:
qVector.h(509(:警告C4127:条件表达式是恒定的(main.cpp( QVECTOR.H(506(:编译类模板成员函数时 'qVector> :: qVector(std :: prinitizer_list(' 用[t = qpair]
编译 在
我的代码:
QVector< QPair< double, float> > container(
{{40, 0.0f},
{70, 0.95f},
{80, 0.7f}}
);
它可以很好地构建,我只希望警告消失(没有更改警告级别(。我在做什么错?
/*编辑 */
没有人对警告是什么发表评论?这到底是什么意思?,是否有警告?我在QVECTORS的初始化列表上查找了QT文档,但并没有说太多。一般没有人对功能模板实例化有何话?
警告似乎是不可避免的,与我的初始列表有关,与QVector有关。QVECTOR检查的任何构造函数
if (QTypeInfo<T>::isComplex)
这是一个简单的枚举值,在下面列出的类名称声明的语法中,有几个没有模板,模板 *或模板的类。很想向我解释一下!
template <typename T>
class QTypeInfo { enumbla;}
template<>
class QTypeInfo<void> { enumbla;}
template <typename T>
class QTypeInfo<T*> { enumbla;}
因此,IF查找适当的Qtypeinfo类的枚举值,这是一个常数,作为其枚举!
是不可避免的警告,更多的东西要抑制!