C++;以字符串作为键的列表 second=rel; 返回; } 关系映射插入(对(guid,rel)); } int getRelationState(标准::字符串guid){ if(relationship\u map.find(guid)!=relationship\u map.end())返回relationship\u map[guid]; 返回1; } > p>欢迎使用C++,下面的代码作为参考,做你想做的事情。 //声明地图 std::map <int, std::string> stdBindList; std::map <int, std::string>::iterator pos; //Add Elements stdBindList.insert (std::pair<int,std::string>(15,”a”)); // 1 stdBindList.insert (std::pair<int,std::string>(22,”b”)); // 2 stdBindList.insert (std::pair<int,std::string>(12,”c”)); // 3 stdBindList.insert (std::pair<int,std::string>(15,”d”)); // 4 stdBindList.insert (std::pair<int,std::string>(5,”e”)); // 5 stdBindList.insert (std::pair<int,std::string>(5,”f”)); // 6 stdBindList.insert (std::pair<int,std::string>(2,”g”)); // 7 stdBindList.insert (std::pair<int,std::string>(5,”h”)); // 8 stdBindList.insert (std::pair<int,std::string>(5,”i”)); // 9 //iterate and print for (pos = stdBindList.begin();pos!=stdBindList.end();pos++) { } std::map stdBindList; std::map::iterator pos; //添加元素 stdBindList.insert(std::pair(15,“a”);//1. stdBindList.insert(std::pair(22,“b”);//2. stdBindList.insert(std::pair(12,“c”);//3. stdBindList.insert(std::pair(15,“d”);//4. stdBindList.insert(std::pair(5,“e”);//5. stdBindList.insert(std::pair(5,“f”);//6. stdBindList.insert(std::pair(2,“g”);//7. stdBindList.insert(std::pair(5,“h”);//8. stdBindList.insert(std::pair(5,“i”);//9 //迭代打印 对于(pos=stdBindList.begin();pos!=stdBindList.end();pos++) { } 阅读有关map::operator[]的信息。问题是什么?错误是什么?没有错误。你的setRelationState相当于relationmap[guid]=rel,但效率较低。“避免重复条目”是什么意思?地图上每个键只有一个条目。谢谢您的参考。我试图使用它,但我想我做错了什么:

C++;以字符串作为键的列表 second=rel; 返回; } 关系映射插入(对(guid,rel)); } int getRelationState(标准::字符串guid){ if(relationship\u map.find(guid)!=relationship\u map.end())返回relationship\u map[guid]; 返回1; } > p>欢迎使用C++,下面的代码作为参考,做你想做的事情。 //声明地图 std::map <int, std::string> stdBindList; std::map <int, std::string>::iterator pos; //Add Elements stdBindList.insert (std::pair<int,std::string>(15,”a”)); // 1 stdBindList.insert (std::pair<int,std::string>(22,”b”)); // 2 stdBindList.insert (std::pair<int,std::string>(12,”c”)); // 3 stdBindList.insert (std::pair<int,std::string>(15,”d”)); // 4 stdBindList.insert (std::pair<int,std::string>(5,”e”)); // 5 stdBindList.insert (std::pair<int,std::string>(5,”f”)); // 6 stdBindList.insert (std::pair<int,std::string>(2,”g”)); // 7 stdBindList.insert (std::pair<int,std::string>(5,”h”)); // 8 stdBindList.insert (std::pair<int,std::string>(5,”i”)); // 9 //iterate and print for (pos = stdBindList.begin();pos!=stdBindList.end();pos++) { } std::map stdBindList; std::map::iterator pos; //添加元素 stdBindList.insert(std::pair(15,“a”);//1. stdBindList.insert(std::pair(22,“b”);//2. stdBindList.insert(std::pair(12,“c”);//3. stdBindList.insert(std::pair(15,“d”);//4. stdBindList.insert(std::pair(5,“e”);//5. stdBindList.insert(std::pair(5,“f”);//6. stdBindList.insert(std::pair(2,“g”);//7. stdBindList.insert(std::pair(5,“h”);//8. stdBindList.insert(std::pair(5,“i”);//9 //迭代打印 对于(pos=stdBindList.begin();pos!=stdBindList.end();pos++) { } 阅读有关map::operator[]的信息。问题是什么?错误是什么?没有错误。你的setRelationState相当于relationmap[guid]=rel,但效率较低。“避免重复条目”是什么意思?地图上每个键只有一个条目。谢谢您的参考。我试图使用它,但我想我做错了什么:,c++,dictionary,C++,Dictionary,谢谢你的帮助:) 具体问题:当使用字符串作为键并避免重复条目时,如何从地图中存储和获取对象 #include <map> std::map<std::string, int> relation_map; void setRelationState(std::string guid, int rel){ if (relation_map.find(guid) != relation_map.end()){ std::map<std::strin

谢谢你的帮助:)

具体问题:当使用字符串作为键并避免重复条目时,如何从地图中存储和获取对象

#include <map>
std::map<std::string, int> relation_map;
void setRelationState(std::string guid, int rel){
    if (relation_map.find(guid) != relation_map.end()){
        std::map<std::string, int>::iterator it = relation_map.find(guid);
        it->second = rel;
        return;
    }
    relation_map.insert(pair<std::string, int>(guid, rel));
}
int getRelationState(std::string guid){
    if (relation_map.find(guid) != relation_map.end())return relation_map[guid];
    return 1;
}
#包括
映射关系图;
void setRelationState(标准::字符串guid,int rel){
if(relationship\u map.find(guid)!=relationship\u map.end()){
std::map::iterator it=relationship\u map.find(guid);
it->second=rel;
返回;
}
关系映射插入(对(guid,rel));
}
int getRelationState(标准::字符串guid){
if(relationship\u map.find(guid)!=relationship\u map.end())返回relationship\u map[guid];
返回1;
}

> p>欢迎使用C++,下面的代码作为参考,做你想做的事情。 //声明地图

std::map <int, std::string> stdBindList;
std::map <int, std::string>::iterator pos;

//Add Elements

stdBindList.insert (std::pair<int,std::string>(15,”a”)); // 1
stdBindList.insert (std::pair<int,std::string>(22,”b”)); // 2

stdBindList.insert (std::pair<int,std::string>(12,”c”)); // 3
stdBindList.insert (std::pair<int,std::string>(15,”d”)); // 4
stdBindList.insert (std::pair<int,std::string>(5,”e”)); // 5
stdBindList.insert (std::pair<int,std::string>(5,”f”)); // 6
stdBindList.insert (std::pair<int,std::string>(2,”g”)); // 7

stdBindList.insert (std::pair<int,std::string>(5,”h”)); // 8
stdBindList.insert (std::pair<int,std::string>(5,”i”)); // 9

//iterate and print

for (pos = stdBindList.begin();pos!=stdBindList.end();pos++)
{

}
std::map stdBindList;
std::map::iterator pos;
//添加元素
stdBindList.insert(std::pair(15,“a”);//1.
stdBindList.insert(std::pair(22,“b”);//2.
stdBindList.insert(std::pair(12,“c”);//3.
stdBindList.insert(std::pair(15,“d”);//4.
stdBindList.insert(std::pair(5,“e”);//5.
stdBindList.insert(std::pair(5,“f”);//6.
stdBindList.insert(std::pair(2,“g”);//7.
stdBindList.insert(std::pair(5,“h”);//8.
stdBindList.insert(std::pair(5,“i”);//9
//迭代打印
对于(pos=stdBindList.begin();pos!=stdBindList.end();pos++)
{
}

阅读有关
map::operator[]
的信息。问题是什么?错误是什么?没有错误。你的
setRelationState
相当于
relationmap[guid]=rel,但效率较低。“避免重复条目”是什么意思?地图上每个键只有一个条目。谢谢您的参考。我试图使用它,但我想我做错了什么: