c++ map怎样根据索引的内容查找到key
3个回答
展开全部
c++的std::map有两种方式可以实现依据索引的内容查找对应的键值
使用std::map的find接口。
例子如下:
std::map<std::string,int> mapTest;
std::map<std::string,int>::iterator it = mapTest.find("index");
if(it!=mapTest.end()) return it->second;
使用std::map的下标运算符重载
例子如下:
std::map<std::string,int> mapTest;
return mapTest["index"];
注意,对于第二种方式存在安全隐患。如果对应的索引并不存在对应的键值的话,会有异常抛出。如果不捕获并处理的话可能导致程序崩溃。如果不确认索引是否存在键值,最好使用第一种方式,并添加查找失败的处理。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询