Шаг 15.
Библиотека STL.
Демонстрация использования простого отображения

    На этом шаге мы приведем пример простого отображения.

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

    На следующем шаге мы рассмотрим хранение в отображении объектов класса.




Предыдущий шаг Содержание Следующий шаг