例如我有这样的数组:
name[0] = "Griffin";
name[1] = "David";
name[2] = "John";
name[3] = "Abigail";
然后我有按此顺序排序的文件名
John
David
Abigail
Griffin
如何确定哪个数组编号包含名称John,只需读取它的名称并且不为每个条目运行循环并使用语句检查,因为我将有更多名称。
答案 0 :(得分:5)
使用std::map
。
编辑:
琐碎的例子
map <string, int> name;
std::string arr[] = {"Griffin", "David", "John", "Abigail"};
for(int i=0;i < 3;++i)
{
name[arr[i]] = i;
}
std::cout <<name["John"]; //prints 2