名稱空間
變體
操作

std::ranges::join_view<V>::iterator

來自 cppreference.com
< cpp‎ | ranges‎ | join view
 
 
範圍庫 (Ranges library)
範圍介面卡 (Range adaptors)
 
 
template< bool Const >
class /*iterator*/
(C++20 起)
(僅作說明*)

當外部 range V 和內部 range ranges::range_reference_t<V> 都滿足 common_range 且父級 join_viewforward_range 時,join_view::beginjoin_view::end 的返回型別。

如果 V 不是簡單檢視(例如,如果 ranges::iterator_t<const V> 無效或與 ranges::iterator_t<V> 不同),則對於從 const 過載返回的迭代器,Const 為 true,否則為 false。如果 V 是簡單檢視,則當且僅當 ranges::range_reference_t<V> 是引用時,Const 為 true。

目錄

[編輯] 成員型別

成員 定義
Parent maybe-const <Const, ranges::join_view<V>>
(僅供說明的成員型別*)
Base maybe-const <Const, V>
(僅供說明的成員型別*)
OuterIter ranges::iterator_t<Base>
(僅供說明的成員型別*)
InnerIter ranges::iterator_t<ranges::range_reference_t<Base>>
(僅供說明的成員型別*)
iterator_concept
iterator_category
(有條件存在)
僅當 iterator::iterator_concept(見上文)表示 std::forward_iterator_tag 時才定義。

OUTERCstd::iterator_traits<ranges::iterator_t<Base>>::iterator_category,且 INNERCstd::iterator_traits<ranges::iterator_t<ranges::range_reference_t<Base>>>::
    iterator_category

value_type ranges::range_value_t<ranges::range_reference_t<Base>>
difference_type std::common_type_t<ranges::range_difference_t<Base>,
                   ranges::range_difference_t<ranges::range_reference_t<Base>>>

[編輯] 資料成員

成員 定義
OuterIter outer_ (私有) 一個外部迭代器
(僅用於闡釋的成員物件*)
InnerIter inner_ (私有) 一個內部迭代器
(僅用於闡釋的成員物件*)
Parent* parent_ (私有) 指向父物件的指標
(僅用於闡釋的成員物件*)

[編輯] 成員函式

構造一個迭代器
(公開成員函式)
訪問元素
(公開成員函式)
前進或後退底層迭代器
(公開成員函式)
跳過空的內部範圍
(僅用於說明的成員函式*)

[編輯] 非成員函式

比較底層迭代器
(函式)
(C++20)
將底層迭代器解引用的結果轉換為其關聯的右值引用型別
(函式)
(C++20)
交換兩個底層迭代器指向的物件
(函式)