名稱空間
變體
操作

std::ranges::common_view<V>::end

來自 cppreference.com
< cpp‎ | ranges‎ | common view
 
 
範圍庫 (Ranges library)
範圍介面卡 (Range adaptors)
 
 
constexpr auto end() requires (!/*simple-view*/<V>);
(1) (C++20 起)
constexpr auto end() const requires ranges::range<const V>;
(2) (C++20 起)
1) 返回一個表示 `common_view` 結尾的迭代器,即
2)(1),但 V 是 const 限定的。

目錄

[編輯] 返回值

表示底層檢視結尾的迭代器。

[編輯] 示例

#include <iostream>
#include <numeric>
#include <ranges>
 
int main()
{
    constexpr int n{4};
 
    constexpr auto v1 = std::views::iota(1)
                      | std::views::take(n)
                      | std::views::common
                      ;
    constexpr auto v2 = std::views::iota(2)
                      | std::views::take(n)
                      ;
    const int product = std::inner_product(v1.begin(), v1.end(),
                                           v2.begin(),
                                           0);
    std::cout << product << '\n';
}

輸出

40

[編輯] 缺陷報告

下列更改行為的缺陷報告追溯地應用於以前出版的 C++ 標準。

缺陷報告 應用於 釋出時的行為 正確的行為
LWG 4012 C++20 非 const 過載漏掉了 simple-view 檢查 已新增

[編輯] 參閱

返回指向起始的迭代器
(public 成員函式) [編輯]
返回指向範圍開頭的迭代器
(定製點物件)[編輯]
返回指示範圍末尾的哨兵
(定製點物件)[編輯]