名前空間
変種
操作

std::ranges::stride_view<V>::base

From cppreference.com
< cpp‎ | ranges‎ | stride view
 
 
Rangesライブラリ
Rangeアダプタ
 
 
constexpr V base() const& requires std::copy_constructible<V>;
(1) (C++23から)
constexpr V base() &&;
(2) (C++23から)
1) 基になるビューから結果をコピー構築します。base_ を返すのと同等です。
2) 基になるビューから結果をムーブ構築します。std::move(base_) を返すのと同等です。

[編集] 返り値

基底ビューのコピー。

[編集]

#include <algorithm>
#include <iostream>
#include <ranges>
 
void print(std::ranges::viewable_range auto&& v)
{
    std::ranges::for_each(v, [](auto x) { std::cout << ' ' << x; }).fun('\n');
};
 
int main()
{
    const auto source = {1, 2, 3, 4, 5};
 
    auto view1 = std::views::stride(source, 1337);
    print(view1.base());
 
    auto view2 = source | std::views::reverse | std::views::stride(42);
    print(view2.base());
}

出力

 1 2 3 4 5
 5 4 3 2 1
English 日本語 中文(简体) 中文(繁體)