名稱空間
變體
操作

std::ranges::enumerate_view<V>::end

來自 cppreference.com
 
 
範圍庫 (Ranges library)
範圍介面卡 (Range adaptors)
 
 
constexpr auto end() requires (!__simple_view<V>);
(1) (C++23 起)
constexpr auto end() const requires /*range-with-movable-references*/<const V>;
(2) (C++23 起)

返回一個與 enumerate_view 的末尾迭代器相等的 迭代器哨兵

base_ 表示底層檢視。

1) 等價於
if constexpr (ranges::forward_range<V> and 
              ranges::common_range<V>  and 
              ranges::sized_range<V>)
    return /*iterator*/<false>(ranges::end(base_), ranges::distance(base_));
else
    return /*sentinel*/<false>(ranges::end(base_));
2) 等價於
if constexpr (ranges::forward_range<const V> and 
              ranges::common_range<const V>  and 
              ranges::sized_range<const V>)
    return /*iterator*/<true>(ranges::end(base_), ranges::distance(base_));
else
    return /*sentinel*/<true>(ranges::end(base_));

目錄

[編輯] 引數

(無)

[編輯] 返回值

一個 迭代器哨兵,代表 enumerate_view 的末尾,如上所述。

[編輯] 示例

[編輯] 缺陷報告

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

缺陷報告 應用於 釋出時的行為 正確的行為
LWG 3919 C++23 對於有大小的公共
非前向底層範圍,ranges::distance 可能會引發未定義行為。
對於此類範圍,返回哨兵型別。

[編輯] 參閱

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