-
Notifications
You must be signed in to change notification settings - Fork 3
4. Введение в вектор
Вектор это динамический массив, память в котором аллоцирована одним куском c использованием std::allocator, что является по своей сути одной большой оберткой над операторами new и delete. Понять как им пользоваться можно тут:
https://www.cplusplus.com/reference/memory/allocator/?kw=allocator
Если есть лишние полтора часа, тык сюда
Для начала опишите класс вектора, конструкторы, деструктор и методы, не требующие итераторов.
Методы можно брать с сайтов из сабжекта:
https://www.cplusplus.com/reference/vector/vector/?kw=vector
https://en.cppreference.com/w/cpp/container/vector
Обычно в реализации вектора хранятся:
_array (указатель на начало массива)
_size (размер)
_capacity (емкость)
_alloc (аллокатор)
Также возможна реализация с использованием только указателей:
_start (указатель на начало массива)
_end (указатель на место в памяти после последнего элемента вектора)
_end_capacity (указатель на последнюю ячейку аллоцированной памяти)
_alloc (аллокатор)