#include <iostream.h>
#include <list>
#include <string>
#include <conio.h>

using namespace std;

// Переименование некоторых типов для облегчения 
// последующей работы при создании списка и его 
// итератора. 
// 
typedef list<string>           strList;
typedef list<string>::iterator strIter;

int main(int argc, char* argv[]) {

  strList myList;
  cout << "      Тестирование списка библиотеки STL" << endl;
  cout << endl;
  // Добавление строк 
  // 
  myList.insert(myList.end(),"first");
  myList.insert(myList.end(),"second");
  myList.insert(myList.end(),"third");
  myList.insert(myList.end(),"fourth");
  myList.insert(myList.end(),"fifth");
  myList.push_front("Head"); // добавить в начало
  myList.push_back("Tail");  // добавить в конец

  // Вывод списка
  //
  cout << "   Печать списка" << endl;
  for (strIter iter=myList.begin(); iter != myList.end(); ++iter )
    cout << *iter << endl;
  cout << endl; // Добавление пустой строки

  // Убираем один из элементов
  //
  myList.erase(find(myList.begin(), myList.end(), "third"));

  // Сейчас показываем в обратном порядке
  //
  cout << "   Печать списка в обратном порядке" << endl;
  strIter iter = myList.end();
  --iter;
  for (int ix = myList.size(); ix > 0; --iter, --ix)
    cout << *iter << endl;
  cout << endl;  
  cout << "   Нажмите любую клавишу" << endl;
  getch();

  return 0;
}
Хостинг от uCoz