2

QTアプリでこのコードを使用しようとしています

QMap<QString,QMap>

しかし、それが言うビルドの問題があります

C:/****/****/****/***/domparser.h:14: error: type/value mismatch at argument 2 in template parameter list for 'template<class Key, class T> class QMap'
4

1 に答える 1

6

QMap はテンプレート クラスであるため、次のように内部 QMap のタイプを指定する必要があります。

QMap<String, QMap<QString, int> > myMap;

'>' の間のスペースに注意してください。そうしないと、C++ lexer は >> 演算子と見なします。

[編集]

外側のマップ内に、QMap の具体的なインスタンスではなく、一般的な QMap を値の型として格納しようとする場合は、できません!

QMap 自体は型ではなく、テンプレートであるため、QMap のようなものを使用することはできません。テンプレート パラメーターが指定されている場合にのみ型に名前を付けます。

于 2010-03-20T12:23:53.123 に答える