РУКОВОДСТВО ПО СТАНДАРТНОЙ БИБЛИОТЕКЕ ШАБЛОНОВ (STL)
Шрифт:
const_reference operator[](size_type n) const;
reference front;
const_reference front const;
reference back;
const_reference back const;
// вставка/стирание (insert/irase):
void push_back(const bool& x);
iterator insert(iterator position, const bool& x = bool);
void insert(iterator position, size_type n, const bool& x);
template ‹class InputIterator›
void insert(iterator position, InputIterator first, InputIterator last);
void pop_back;
void erase(iterator position);
void erase(iterator first, iterator last);
};
void swap(vector‹bool, allocator›::reference x, vector‹bool, allocator›::reference y);
bool operator==(const vector‹bool, allocator›& x, const vector‹bool, allocator›& y);
bool operator‹(const vector‹bool, allocator›& x, const vector‹bool, allocator›& y);
reference -
Ожидается, что каждое исполнение обеспечит определение vector‹bool› для всех поддерживаемых моделей памяти.
Сейчас невозможно шаблонизировать определение. То есть мы не можем написать:
template ‹template ‹class U› class Allocator = allocator›
class vector‹bool, Allocator› {/*… */};
Поэтому обеспечивается только vector‹bool, Allocator›.
Список (List)
list - вид последовательности, которая поддерживает двунаправленные итераторы и позволяет операции вставки и стирания с постоянным временем в любом месте последовательности, с управлением памятью, обрабатываемым автоматически. В отличие от векторов и двусторонних очередей, быстрый произвольный доступ к элементам списка не поддерживается, но многим алгоритмам, во всяком случае, только и нужен последовательный доступ.
template ‹class T, template ‹class U› class Allocator = allocator›
class list {
public:
// определения типов:
typedef iterator;
typedef const_iterator;
typedef Allocator‹T›::pointer pointer;
typedef Allocator‹T›::reference reference;
typedef Allocator‹T›::const_reference const_reference;
typedef size_type;
typedef difference_type;
typedef Т value_type;
typedef reverse_iterator;
typedef const_reverse_iterator;
//
размещение/удаление:
list
list(size_type n, const T& value = T);
template ‹class InputIterator›
list(InputIterator first, InputIterator last);
list(const list‹T, Allocator›& x);
~list;
list‹T, Allocator›& operator=(const list‹T,Allocator›& x);
void swap(list‹T, Allocator& x);
// средства доступа:
iterator begin;
const_iterator begin const;
iterator end;
const_iterator end const;
reverse_iterator rbegin;
const_reverse_iterator rbegin;
reverse_iterator rend;
const_reverse_iterator rend;
bool empty const;
size_type size const;
size_type max_size const;
reference front;
const_reference front const;
reference back;
const_reference back const;
// вставка/стирание:
void push_front(const T& x);
void push_back(const T& x);
iterator insert(iterator position, const T& x = T);
void insert(iterator position, size_type n, const T& x);
template ‹class InputIterator›
void insert(iterator position, InputIterator first, InputIterator last);
void pop_front;
void pop_back;
void erase(iterator position);
void erase(iterator first, iterator last);
// специальные модифицирующие операции cо списком:
void splice(iterator position, list‹T, Allocator›& x);
void splice(iterator position, list‹T, Allocator›& x, iterator i);
void splice(iterator position, list‹T, Allocator›& x, iterator first, iterator last);
void remove(const T& value);
template ‹class Predicate›
void remove_if(Predicate pred);
void unique;
template ‹class BinaryPredicate›
Поделиться:
Популярные книги
Жребий некроманта 3
3. Жребий некроманта
Фантастика:
боевая фантастика
5.56
рейтинг книги
Наследник и новый Новосиб
7. Десять Принцев Российской Империи
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сын Петра. Том 1. Бесенок
1. Сын Петра
Фантастика:
попаданцы
альтернативная история
6.80
рейтинг книги
Проклятый Лекарь IV
4. Каратель
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Прометей: владыка моря
5. Прометей
Фантастика:
фэнтези
5.97
рейтинг книги
Мама для дракончика или Жена к вылуплению
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Неестественный отбор.Трилогия
Неестественный отбор
Детективы:
триллеры
6.40
рейтинг книги
Черкес. Дебют двойного агента в Стамбуле
1. Черкес
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
(Не)свободные, или Фиктивная жена драконьего военачальника
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Огни Аль-Тура. Завоеванная
4. Эйнар
Любовные романы:
любовно-фантастические романы
эро литература
5.00
рейтинг книги
Шесть принцев для мисс Недотроги
3. Мисс Недотрога
Фантастика:
фэнтези
7.92
рейтинг книги
Сыночек в награду. Подари мне любовь
1. Суровые отцы
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Жена со скидкой, или Случайный брак
Любовные романы:
любовно-фантастические романы
8.15
рейтинг книги
Кодекс Крови. Книга II
2. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00