Программирование >>  Операторы преобразования типа 

1 ... 74 75 76 [ 77 ] 78 79 80 ... 239


size type нонтейнер: :erase (const Т& value)

О Удаляет из ассоциативного контейнера все элементы со значением, равным value.

О Возвращает количество удаленных элементов. О Вызывает деструкторы для удаляемых элементов. ОТ - тип сортируемых данных:

□ для множеств и мультимножеств - тип элемента;

□ для отображений и мультиотображений - тип ключа. О Функция не генерирует исключений.

О Поддерживается множествами, мультимножествами, отображениями, мультиотображениями.

void контейнер::erase (iterator pos) iterator нонтейнер: -.erase (iterator pos)

О Обе версии удаляют элемент в позиции итератора pos.

О Для последовательных контейнеров (векторы, деки, списки и строки) используется вторая сигнатура, которая возвраи1аст позтщию следующего элемента (или endO).

О Для ассоциативных контейнеров (множества, мультимножества, отображения, мультиотображения) используется первая сигнатура, которая пе имеет возвращаемого значения.

О Обе версии вызывают деструкторы для удаляемых элементов.

О Перед нызовом необходимо убедиться в том, что итератор pos имеет допустимое значение. Пример;

coll,ега5е(со11.endO); ОШИБКА - непредсказуемые последствия

О В векторах и деках в результате выполнения операции итераторы и ссылки на другие элементы могут стать недействительными.

О В векторах и деках функция генерирует исключенрш только в том случае, если исключение генерируется капируюии-iM конструктором и.ли оператором присваивания. В остальных контейнерах функция не генерирует исключений.

О Поддерживается векторами, деками, списками, множествами, мультимноже-ствам1т, отображениями, мультиотображениями, строками.

void контейнер-, -.erase (iterator beg. iterator end) iterator контейнер: -.erase (Iterator beg. iterator end)

О Обе версии удаляют элементы в интервале [beg,end).

О Для последовательных контейнеров (векторы, деки, списки и строки) используется вторая сигнатура, которая возвращает П031щию элемента, находящегося за последним удаленным элементом (или end()).

О Для ассоциативных контейнеров (множества, мультимножества, отображения, мультиотображения) используется первая сигнатура, которая не имеет возвращаемого значения.



О Интервал является открытым, то есть удаляются все элементы, включая beg, но исключая end.

О Обе версии вызывают десгруюоры для удаляемых элементов.

О Перед вызовом необходимо убедиться в том, что итераторы beg и end определяют действительный интервал элементов контейнера.

О В векторах и деках в результате выполнения операции итераторы и ссылки на другие элементы могут стать недействительными.

О В векторах и деках функция генерирует исключения то.Ш)Ко в том случае, если исключение генерируется копирующим конструктором или оператором присваивания. В остальных контейнерах функция не генерирует исключений.

О Поддерживается векторами, деками, списками, множествами, мультимножествами, отображениями, мультиотображениями, строками.

void KDwгейзер::pop front (const Т& value)

О Удаляет первый элемент контейнера. О Эквивалентно следующему вызову;

нонтейнер.егазе{нонтейнер.begini)).

О Если контейнер не содержит элементов, последствия вызова непредсказуемы. Следовательно, при вызове необходимо убедиться в том, что контейнер содержит по крайней мере один элемент (size()>0).

О Функцрш не генерирует исключений.

О Поддерживается деками и списками.

void нонтейнер:-.popjhck (const Т& value)

О Удаляет последний алсмснт.

О Эквивалентно следующему вызову, по при условии, что это выражение действительно (для векторов выпо.лнение этого условия не гарантировано - см. с. 264);

нонтейнер.егаsе(- -нонтейнер.end())

О Если контейнер не содержит элементов, последствия вызова непредсказуемы. Следовательно, при вызове необходимо убедиться в том, что контейнер содержит по крайней мере один элемент (size()>0).

О Функция не генерирует исключений,

О Поддерживается векторами, деками, списками.

void Kowrewep::resize (size type пит)

void контейнер::resize (sizetype num. T value)

О Обе версии изменяют количество элементов до ?гит. О Если при вызове s\zeO=~num, вызов игнорируется.

О Если при вызове s\zeQ<num, дополнительные элементы создаются и присоединяются к концу контейнера. В первой версии новые элементы создаются



вызовом конструктора по умолчанию, во второй версии они создаются как копии value.

О Если при вызове s\ZG.Q>num, элементы в конце контейнера удаляются до заданного размера. В этом случае для удаляемых элементов вызываются деструкторы.

О В векторах и деках в результате выполнения операции итераторы и ссылки иа другие алементы могут стать недействительными.

О В векторах и деках функция либо выполняется успешно, либо не вносит изменений, еспи при выполнении копирующего конструктора или оператора присваивания не было сгенерировано исключение. В списках функция либо выполняется успешно, либо не вносит изменений.

О Поддерживается векторами, деками, списками, строками.

void контейнер::с1еаг О .

О Удаляет все элементы, оставляя контейнер пустым.

О Вызывает деструкторы для удаляемых элементов.

О Все итераторы и ссылки на контейнер становятся недействительными.

О В векторах и деках функция генерирует исключения только в том случае, если исключение генерируется копирующим конструктором или оператором присваивания. В остальных контейнерах функция пе генерирует исключений.

О Поддерживается векторами, деками, списками, множествами, мультимножествами, отображениями, му.льтиотображениями, строками.

Специальные функции для списков

void список: : unique ()

void СЛИСОК::unique (BinaryPredicate op)

О Обе версии оставляют в списке лишь один элемент с каждым значением и удаляют псе последующие дубликаты. В результате значение каждого элемента списка отличается от значения всех остальных .элементов.

О Первая версия удаляет все элементы, значение которых совпадает со значением одного из предшествующих алементов.

О Вторая версия удаляет все элементы, следующие после элемента е, для которых бинарный предикат ор{элемепт,е) возвращает true. Другими словами, предикат используется не для сравнения элемента с предшественником; э.ле-меит сравнивается с предыдупим элементом, который не был удален.

О Предикат ор не до.лжен изменять свое состояние во время вызова функции. За подробностями обращайтесь на с. 303.

Вторая версия sort() работоспособна только в системах с поддержкой шаблонных функций классов (см. с. 28).



1 ... 74 75 76 [ 77 ] 78 79 80 ... 239

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика