Spec-Zone.ru › C++

std::ranges::take_while_view<V,Pred>::base

constexpr V base() const& requires std::copy_constructible<V>;
(1) (начиная с C++20)
constexpr V base() &&;
(2) (начиная с C++20)

Возвращает копию базового представления.

1) Копирующий конструктор создает результат из базового представления base_.
2) Перемещающий конструктор создает результат из базового представления base_.

Параметры

(нет)

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

Копия базового представления.

Пример

#include <iostream>
#include <ranges>

namespace stq {
void println(auto, const auto& v)
{
    for (const auto& e : v)
        std::cout << e << ' ';
    std::cout << '\n';
}
}

int main()
{
    static constexpr int a[]{1, 2, 3, 4, 5};
    constexpr auto view = a | std::views::take_while([](int x){ return x < 4; });
    stq::println("{}", view);
    const auto base = view.base();
    stq::println("{}", base);
}

Вывод:

1 2 3
1 2 3 4 5

См. также

pred
возвращает ссылку на сохраненный предикат
(открытая функция-член)

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

Spec-Zone.ru

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