像地图但有一个价值的东西?

时间:2014-12-06 13:10:16

标签: c++ key-value

我使用地图来快速查找名称,这些名称可以是大约200,并且总是不同的值或位置。所以现在我写这个:

map<string, string> names;
void function( string name)
{
  names.insert(pair<string,string>(name,name));
}

所以关键和价值永远相同。使用它还是存在更好的东西是好的吗?我不想使用矢量,因为我经常找到名字,矢量总是连续这样做。

1 个答案:

答案 0 :(得分:5)

您正在寻找std::set<std::string>。集合类似于地图,但没有卫星数据,即它们存储密钥。

如果您不需要订购,也可以尝试使用std::unordered_set<std::string>,这会平均提供渐进式查询。