我正在尝试使用嵌套的QList:
QMap<int, QMap<QString, QList<int> > > teamGames;
for (int team1 = 1; team1 <= TOTAL_TEAMS; ++team1) {
QMap<QString,QList<int>> games;
teamGames[team1]=games;
QList<int> home;
QList<int> away;
games["home"] = home;
games["away"] = away;
}
teamGames.value(1).value("home").push_back(1);
Run Code Online (Sandbox Code Playgroud)
当我编译时我得到:1>.\ main.cpp(154):错误C2662:'QList :: push_back':无法将'this'指针从'const QList'转换为'QList&'
我确信它的东西很简单,我忽略了,或者可能有一个简单的解决方案让我望而却步.任何帮助非常感谢.
正如您在此处 看到的那样,QMap::value(const Key & key) const;返回a const T,这意味着您无法修改所获得的内容.即使你可以修改你放入地图的值的副本.你需要的是T&QMap :: operator [](const Key&key),它返回与键相关的值作为可修改的引用.所以打电话
((teamGames[1])["home"]).push_back(1);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3321 次 |
| 最近记录: |