使用map c ++

时间:2015-06-12 15:40:03

标签: dictionary iterator

我在头文件中有以下代码:

#include <string>
using std::string;
#include <map>
using std::map;
#include <utility>
using std::pair;
#include "share.h"
#include "bond.h"
#include "projectEnumsDefines.h"

namespace mtm {

class Account {
    string id;
    double money;
    RequestType type;
    map<share, int> shares;
    map<bond, int> bonds;

public:
    void checkBondsAndUpdate() {
        for(auto &it1 : bonds) {
            bond bond =  it1.first;

    }
}
// class implementation
};
}

我试图通过迭代“债券”地图来访问checkBondsAndUpdate中的债券键。 但是在“债券债券= it1.first”这一行上它给出了一个错误“字段first无法解决”。这可能是什么问题?感谢

编辑:如果我这样做就行了

pair<bond,int> pair =  it1;
bond bond = pair.first;

而不是

bond bond =  it1.first;

唯一的问题是为什么..

0 个答案:

没有答案