Шаг 12 - Понимание итератора.
Вы должны воспринимать итератор на данный момент, как указатель C++. В общем случае это одно и тоже. Давайте посмотрим как применить алгоритм find к массиву C. Массив это и есть набор указателей вроде как.
Шаг 11 - Списки.
Для использования списков необходимо подключить заголовочный файл и выбрать область.
Шаг 10 - Наш класс в векторе.
На данный момент мы использовали в векторе стандартные классы MFC, а как быть для того, чтобы в вектор можно было пеместить произвольный класс ? Для этого нужно соблюдать ряд условий. Минимальные условия.
- Конструктор по умолчанию
- Конструктор копий
- Деструктор
Шаг 9 - Применение алгоритмов к вектору.
Одним из алгоритмов является сортировка, вот мы и посмотрим как она работает с вектором. Для сортировки можно применить стандартный алгоритм sort. Для его использования необходимо подключить файл заголовков алгоритмов.
Шаг 8 - Дальше о векторе.
Я уже говоил о инициализации вектора. В дополнение можно сказать, что вектор можно инициализировать с заранее установленными значениями. Вот пример демонстрирующий и доступ к данным вектора через [].
Шаг 7 - Знакомимся с вектором.
Вектор (vector) напоминает нам массив, только он способен расти до произвольного размера, поддерживает информацию о размере. Как и массив к вектору можно обратить воспользовавшись операцией индексирования []. Вот характеристики
- Доступ к данных с одинаковой скоростью
- Вставка приводит к перемещению элементов
- При расширении данные копируються в другой блок
Шаг 6 - Компоненты STL.
В STL большое количество шаблонов, как классов так и функций. Мы можем их использовать с ООП или без него. Вообщем как хотим. Но в STL есть 3 основные компоненты.
Шаг 5 - Шаблоны классов.
В прошлый раз я заикнулся про шаблоны классов. Раз сказал надо показать. Шаблоны классов очень сильно похожи на шаблоны функций и решают теже задачи. То есть они помогают производить одинаковые операции с разными типами данных. Давайте прошлый пример переложим на классы.
Шаг 4 - Шаблоны функций основа STL.
Можно смело сказать, что основу STL составляют шаблоны. Именно они позволяют значительно сократить количество кода для программирования алгоритмов.
