...
map<string,int>test;
int n=3;
for (int i=0; i<n; ++i) {
string rediska;
int a;
std:: cout << i << " " << "Enter name>>> \t";
std:: cin >> rediska;
std:: cout << "Enter for this name estimate >>> \t";
std:: cin >> a;
// insert
test.insert(map<string,int>::value_type(string(rediska),a));
}
...
map , просмотр и поиск ? (С++)
Код:
ну скажем добавил я:
bobik 10
tuzik 5
sharik 3
мне надо теперь вывести все записи, Каким образом?
и еще надо поиск сделать, ну типа ввел я по строке bobik, или по числу 10 а мне что бы выдало: bobik 10 и т.п
как реализовать? :)
Код:
for(map<string,int>::iterator it = test.begin();
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
Для поиска смотри ф-ию find - возвращает позицию первого элемента с заданным значением,причем возвращает его позицию в виде итератора.
Код:
map<string,int>::iterator iter = test.find("bobik");
cout<<iter->second<<endl;
cout<<iter->second<<endl;
по поводу просмотра:
Код:
for(map<string,int>::iterator it = test.begin();
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
оно работает, но я не могу понять как.
вот что не ясно:
что есть: iterator ?
и что делает функция begin() ?
***
ну вообщем с поиском понял, но опять же что оно такое этот "итератор" ?
Цитата: bobik02
m_Valery , Спасибо!
по поводу просмотра:
оно работает, но я не могу понять как.
вот что не ясно:
что есть: iterator ?
и что делает функция begin() ?
***
ну вообщем с поиском понял, но опять же что оно такое этот "итератор" ?
по поводу просмотра:
Код:
for(map<string,int>::iterator it = test.begin();
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
it != test.end();++it)
cout<<it->first<<' '<<it->second<<endl;
оно работает, но я не могу понять как.
вот что не ясно:
что есть: iterator ?
и что делает функция begin() ?
***
ну вообщем с поиском понял, но опять же что оно такое этот "итератор" ?
Итератор - обьект указательного типа предназначенный для последовательного перебора элементов контейнера.Итератор представляет некоторую позицию в контейнере. begin() - возвращает итератор установленный в начало последовательности элементов контейнера.
end() - в конец последовательности...Концом считается позиция за последним элементом.Посмотри подробнее у Страуструпа или Джосюттиса.Ссылки где скачать есть в полезных ссылках раздела Студентам. Тут
по теме: все ясно:) благодарю!