名前空間
変種
操作

std::ranges::zip_view<Views...>::end

From cppreference.com
< cpp‎ | ranges‎ | zip view
 
 
Rangesライブラリ
Rangeアダプタ
 
 
constexpr auto end()
    requires (!(/*simple-view*/<Views> && ...);
(1) (C++23から)
constexpr auto end() const
    requires (ranges::range<const Views> && ...);
(2) (C++23から)
template< class... Rs >

concept /*zip-is-common*/ =
    (sizeof...(Rs) == 1 && (ranges::common_range<Rs> && ...))
    ||
    (!(ranges::bidirectional_range<Rs> && ...) && (ranges::common_range<Rs> && ...))
    ||

    ((ranges::random_access_range<Rs> && ...) && (ranges::sized_range<Rs> && ...));
(3) (説明用*)

zip_view の末尾イテレータと等価なイテレータまたはセンチネルを返します。

基になるビューのタプルを views_ とします。

1) 同値:
  • return /*sentinel*/<false>(/*tuple-transform*/(ranges::end, views_));,
/*zip-is-common*/<Views...>false と評価される場合。
(ranges::random_access_range<Views>&& ...)true と評価される場合。それ以外の場合は、
  • return /*iterator*/<false>(/*tuple-transform*/(ranges::end, views_));.
2) 同値:
  • return /*sentinel*/<true>(/*tuple-transform*/(ranges::end, views_));,
/*zip-is-common*/<const Views...>false と評価される場合。
(ranges::random_access_range<const Views>&& ...)true と評価される場合。それ以外の場合は、
  • return /*iterator*/<true>(/*tuple-transform*/(ranges::end, views_));.

目次

[編集] パラメータ

(なし)

[編集] 戻り値

上記で説明した zip_view の末尾を表すイテレータまたはセンチネル。

[編集] 注記

ranges::range<const ranges::zip_view<Views...>> は、`Views...` 内のすべての型 `Vi` について、const Virange をモデル化する場合にのみモデル化されます。

[編集]

[編集] 関連項目

先頭へのイテレータを返す
(public メンバ関数) [編集]
rangeの終端を示す番兵を返す
(カスタマイゼーションポイントオブジェクト)[編集]
English 日本語 中文(简体) 中文(繁體)