пятница, 8 февраля 2013 г.

динамический массив в c++

test.erase(i) или test.erase(start,end) - удаляет элемент с итератором i или элементы с интераторами между старт и енд

test.clear() - очищает вектор

test.end() - последнего + 1

test.begin() - возвращает интератор первого элемента вектора

test.back() - возвращает ссылку на последний элемент

test.front() - возвращает ссылку на первый элемент

test.asign(start,end) - записывает в вектор значения от start до end. Внимание!!! start и end - интераторы (указатели) на элементы другого вектор.

test.asign(n,m) - записывает в массив n элементов со значением m

test.at(i) - равносильно записи test[i], но при этом, если i-ого элемента не существует, программа не вылетит:)

Еще немного полезных функций:

Для удаления последнего элемента вектора используется функция pop_back()

Обращение к n-ому элементу ничем не отличается от обращения к элементу массива:

Для записи в вектор достаточно набрать имя вектора.push_back(что положить)

vector <type> name; //здесть type- тип данных в векторе, а name - имя вектора

Для создания вектора вам необходимо подключить <vector>. Затем создание вектора почти ничем не отличается от создания переменной и/или массива:

Возможно вы уже сталкивались с такой проблемой, что массивы в с++ имеют ограниченный размер, а мы точно не знаем количество элементов, необходимое в массиве. В таких случаях необходимо использовать динамическое программирование. Т.е. выделять память под элементы массива при необходимости добавить какой-либо элемент. В принципе, в с++ это можно реализовать вручную, но зачем? если есть специальный класс - vector. Он позволяет создавать нам массивы переменной длинны в зависимости от ситуации.

Кроме массивов в c++ существуют еще контейнеры, которые позволяют вам немного по другому хранить данные и, вдобавок, применять к ним различные функции (поиск, сортировка и т.д.) . Сегодня вы узнаете об одном изP контейнеров - векторе (vector)

Красота должна быть от природы, а не от версаче.

Что-то полезное, что-то интересное, что-то нафиг не нужное

C++. Урок 8. STL. Контейнеры. Vector (вектор) – динамический массив | Всякое разное

Комментариев нет:

Отправить комментарий