splice

Материал из cppreference.com
Перейти к: навигация, поиск

Синтаксис:

    #include <list>
    void splice( iterator pos, list& lst );
    void splice( iterator pos, list& lst, iterator del );
    void splice( iterator pos, list& lst, iterator start, iterator end );

Функция splice перемещает один или больше элементов из lst в место перед pos. Первый перегруженный метод перемещает все элементы в lst, второй перемещает только элемент, на который указывает del, а третий перемещает все элементы в диапазоне включая start и не включая end.

splice просто перемещает элементы и одного списка в другой и на самом деле ничего не копирует и не удаляет. Поэтому функция splice выполняется за константное время, кроме третьего случая, которому нужно не больше линейного времени, если lst не равен this. Тем не менее, так как size линейна, то splice константна для всех трех.

Смотри также: insert, merge, swap

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты
На других языках