С++ для начинающих




Стандартный массив – это вектор - часть 4


    else cout << "значение найдено!\n\n";

    // инвертирование массива

    reverse( vec.begin(), vec.end() );

    cout << "инвертированный массив: ";

    it = vec.begin(); end_it = vec.end();

    for ( ; it != end_it; ++ it ) cout << *it << ' ';

      cout << endl;

}

Стандартная библиотека С++ поддерживает и ассоциативные массивы. Ассоциативный массив – это массив, элементы которого можно индексировать не только целыми числами, но и значениями любого типа. В терминологии стандартной библиотеки ассоциативный массив называется отображением (map). Например, телефонный справочник может быть представлен в виде ассоциативного массива, где индексами служат фамилии абонентов, а значениями элементов – телефонные номера:

#include <map>

#include <string>

#include "TelephoneNumber.h"

map<string, telephoneNum> telephone_directory;

(Классы векторов, отображений и других контейнеров в подробностях описываются в главе 6. Мы попробуем реализовать систему текстового поиска, используя эти классы. В главе 12 рассмотрены обобщенные алгоритмы, а в Приложении приводятся примеры их использования.)

В данной главе были очень бегло рассмотрены основные аспекты программирования на С++, основы объектно-ориентированного подхода применительно к данному языку и использование стандартной библиотеки. В последующих главах мы разберем эти вопросы более подробно и систематично.

Упражнение 2.22

Поясните результаты каждого из следующих определений вектора:

string pals[] = {

  "pooh", "tiger", "piglet", "eeyore", "kanga" };

(a) vector<string> svec1(pals,pals+5);

(b) vector<int>    ivec1(10);

(c) vector<int>    ivec2(10,10);

(d) vector<string> svec2(svec1);

(e) vector<double> dvec;

Упражнение 2.23

Напишите две реализации функции min(), объявление которой приведено ниже. Функция должна возвращать минимальный элемент массива. Используйте цикл for и перебор элементов с помощью индекса итератора




Содержание  Назад  Вперед