我正在尝试检查给定的密钥是否在地图中,有些不能这样做:
typedef map<string,string>::iterator mi;
map<string, string> m;
m.insert(make_pair("f","++--"));
pair<mi,mi> p = m.equal_range("f");//I'm not sure if equal_range does what I want
cout << p.first;//I'm getting error here
Run Code Online (Sandbox Code Playgroud)
那么如何打印p中的内容呢?
我发现检查重复项的唯一方法是插入并检查std::pair.second
for false
,但问题是如果密钥未使用,这仍会插入一些东西,而我想要的是一个map.contains(key);
函数.