Spec-Zone.ru › C++

std::front_inserter

Defined in header <iterator>
template< class Container >
std::front_insert_iterator<Container> front_inserter( Container& c );
(constexpr начиная с C++20)

front_inserter — это шаблонная функция-удобство, которая создаёт std::front_insert_iterator для контейнера c с типом, выведенным из типа аргумента.

Параметры

c - контейнер, поддерживающий операцию push_front

Возвращаемое значение

std::front_insert_iterator, который можно использовать для добавления элементов в начало контейнера c.

Возможная реализация

template<class Container>
std::front_insert_iterator<Container> front_inserter( Container& c )
{
    return std::front_insert_iterator<Container>(c);
}

Пример

#include <algorithm>
#include <deque>
#include <iostream>
#include <iterator>
#include <vector>
 
int main()
{
    std::vector<int> v{1, 2, 3, 4, 5};
    std::deque<int> d;
    std::copy(v.begin(), v.end(), std::front_inserter(d));
    for (int n : d)
        std::cout << n << ' ';
    std::cout << '\n';
}

Вывод:

5 4 3 2 1

См. также

front_insert_iterator
адаптер итератора для вставки в начало контейнера
(шаблон класса)
back_inserter
создаёт std::back_insert_iterator типа, выведенного из аргумента
(шаблон функции)
inserter
создаёт std::insert_iterator типа, выведенного из аргумента
(шаблон функции)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/iterator/front_inserter

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API