Spec-Zone.ru › C++

std::mergeable

Defined in header <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)
объединяет два отсортированных диапазона
(niebloid)
ranges::set_union
(C++20)
вычисляет объединение двух множеств
(niebloid)
ranges::set_intersection
(C++20)
вычисляет пересечение двух множеств
(niebloid)
ranges::set_difference
(C++20)
вычисляет разность двух множеств
(niebloid)
ranges::set_symmetric_difference
(C++20)
вычисляет симметрическую разность двух множеств
(niebloid)

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

Spec-Zone.ru

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