qt中的嵌套QMap
我正在尝试在我的QT应用程序中使用此代码qt中的嵌套QMap,qt,qmap,Qt,Qmap,我正在尝试在我的QT应用程序中使用此代码 QMap<QString,QMap> QMap 但是它说有一个构建问题 C:/****/****/****/***/domparser.h:14: error: type/value mismatch at argument 2 in template parameter list for 'template<class Key, class T> class QMap' C:/***/***/***/***/dompars
QMap<QString,QMap>
QMap
但是它说有一个构建问题
C:/****/****/****/***/domparser.h:14: error: type/value mismatch at argument 2 in template parameter list for 'template<class Key, class T> class QMap'
C:/***/***/***/***/domparser.h:14:错误:“模板类QMap”的模板参数列表中参数2的类型/值不匹配
QMap是一个模板类,因此需要像下面这样指定内部QMap的类型:
QMap<String, QMap<QString, int> > myMap;
QMap-myMap;
注意“>”之间的空格,否则C++词表者认为它是>运算符。< /P> [已编辑]
如果您打算在外部映射中尝试将通用QMap存储为值类型,而不是QMap的具体实例,则不能
您不能有类似QMap的东西,因为QMap本身不是一种类型,而是一种模板-它仅在指定模板参数时命名一种类型“如果您打算尝试将任何类型的QMap存储为值类型…您不能”-这可以理解为“QMap的实例化不能用作外部QMap的值类型”. 我相信这不是你的意思,但为了避免疑问:虽然“QMap”无效,但可以使用给定的QMap实例化作为值类型,例如“QMap”。。。。而且,如果外部QMap是在模板中定义的,则该模板的参数可用于实例化内部(值)QMap。例如,如果外部QMap是
Foo
的成员,则其完整类型可以是QMap
是,我的坏。。。我应该说它需要一个完整的instantiable(resolvable?)类型作为模板类型参数