Spec-Zone.ru › C++

std::mergeable

Определено в заголовочном файле <iterator>
template< class I1, class I2, class Out, class Comp = ranges::less,
          class Proj1 = std::identity, class Proj2 = std::identity >
concept mergeable =
    std::input_iterator<I1> &&
    std::input_iterator<I2> &&
    std::weakly_incrementable<Out> &&
    std::indirectly_copyable<I1, Out> &&
    std::indirectly_copyable<I2, Out> &&
    std::indirect_strict_weak_order<Comp,
                                    std::projected<I1, Proj1>,
                                    std::projected<I2, Proj2>>;
(начиная с C++20)

Концепт mergeable задаёт требования к алгоритмам, которые объединяют два входных диапазона в один выходной диапазон в соответствии со строгим слабым порядком, задаваемым Comp.

Семантические требования

Концепт mergeable моделируется только в том случае, если моделируются все концепты, которые он включает.

См. также

ranges::merge
(C++20)
объединяет два отсортированных диапазона
(функциональный объект алгоритма)
ranges::set_union
(C++20)
вычисляет объединение двух множеств
(функциональный объект алгоритма)
ranges::set_intersection
(C++20)
вычисляет пересечение двух множеств
(функциональный объект алгоритма)
ranges::set_difference
(C++20)
вычисляет разность двух множеств
(функциональный объект алгоритма)
ranges::set_symmetric_difference
(C++20)
вычисляет симметрическую разность двух множеств
(функциональный объект алгоритма)

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

Spec-Zone.ru

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