На этом шаге мы приведем пример простого отображения.
Возможности использования отображения демонстрируются в следующей программе. В данном случае в отображении сохраняется 10 пар "ключ-значение". Ключом служит символ, а значением - целое число.
//--------------------------------------------------------------------------- #include <vcl.h> #include <iostream> #include <map> #include <winuser.h> #include <conio.h> //необходимо для getch() #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused using namespace std; std::string ToRus(const std::string &in) { char *buff = new char [in.length()+1]; CharToOem(in.c_str(),buff); std::string out(buff); delete [] buff; return out; } int main(int argc, char* argv[]) { map<char, int> m; int i; // Помещаем пары в отображение. for(i=1; i<10; i++) m.insert(pair<char, int>('a'+i, i)); char ch; map<char, int>::iterator p; p = m.begin(); cout << ToRus("Текущее отображение:\n"); while(p != m.end()) { cout << p->first << " - " << p->second << "\n"; p++; } // Находим значение по ключу. cout << ToRus("Введите ключ: "); cin >> ch; p = m.find(ch); if(p != m.end()) cout << ToRus("Ключ - ") << p->second; else cout << ToRus("Такого ключа нет"); getch(); return 0; } //---------------------------------------------------------------------------
Результаты выполнения этой программы представлены на рисунке 1.
Рис.1. Результат работы приложения
На следующем шаге мы рассмотрим хранение в отображении объектов класса.