Spec-Zone.ru › C++

направляющие вывода для std::ranges::iota_view

Определено в заголовке <ranges>
template< class W, class Bound >
    requires (!/*is-integer-like*/<W> ||
              !/*is-integer-like*/<Bound> ||
              /*is-signed-integer-like*/<W> == /*is-signed-integer-like*/<Bound>)
iota_view( W, Bound ) -> iota_view<W, Bound>;
(начиная с C++20)

Эта направляющая вывода предоставляется для iota_view, чтобы обеспечить вывод типа по начальному и граничному значениям.

Определения /*is-integer-like*/ и /*is-signed-integer-like*/ см. в is-integer-like .

Обратите внимание, что направляющая защищает от ошибок, возникающих из-за несовпадения знаков, например views::iota(0, v.size()), где 0 — знаковый тип, а v.size() — беззнаковый.

Пример

#include <cassert>
#include <ranges>

int main()
{
    auto io = std::ranges::iota_view(1L, 7L); // deduces W and Bound as “long”
    assert(io.front() == 1L and io.back() == 6L);
}

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

Spec-Zone.ru

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