Определение номера массива из имени строки - PullRequest
1 голос
/ 26 февраля 2011

Например, у меня есть такой массив:

name[0] = "Griffin";
name[1] = "David";
name[2] = "John";
name[3] = "Abigail";

Тогда у меня есть имена файлов, упорядоченные в этой последовательности

John
David
Abigail
Griffin

Как определить, какой номер массива содержит имя Джон,прочитав его имя и не запуская циклы для каждой записи и проверив оператором, потому что у меня будет больше имен.

1 Ответ

5 голосов
/ 26 февраля 2011

Вместо использования простого массива используйте std::map.

EDIT:

Тривиальный пример

   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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...