Namespaces
Variants

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

From cppreference.net
Ranges library
Range adaptors
constexpr auto end ( )
requires ( ! ( /*simple-view*/ < Views > && ... ) ;
(1) (seit C++23)
constexpr auto end ( ) const
requires ( ranges:: range < const Views > && ... ) ;
(2) (seit 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) ( Nur zur Darstellung* )

Gibt einen Iterator oder einen Sentinel zurück, der dem End-Iterator des zip_view entspricht.

Lassen Sie views_ das zugrundeliegende Tupel von Views bezeichnen.

1) Entspricht:
  • return /*sentinel*/ < false > ( /*tuple-transform*/ ( ranges:: end , views_ ) ) ; ,
falls /*zip-is-common*/ < Views... > zu false ausgewertet wird. Andernfalls,
falls ( ranges:: random_access_range < Views > && ... ) zu true ausgewertet wird. Andernfalls,
  • return /*iterator*/ < false > ( /*tuple-transform*/ ( ranges:: end , views_ ) ) ; .
2) Entspricht:
  • return /*sentinel*/ < true > ( /*tuple-transform*/ ( ranges:: end , views_ ) ) ; ,
falls /*zip-is-common*/ < const Views... > zu false ausgewertet wird. Andernfalls,
falls ranges:: random_access_range < const Views > && ... zu true ausgewertet wird. Andernfalls,
  • return /*iterator*/ < true > ( /*tuple-transform*/ ( ranges:: end , views_ ) ) ; .

Inhaltsverzeichnis

Parameter

(keine)

Rückgabewert

Ein Iterator oder Sentinel, der das Ende der zip_view repräsentiert, wie oben beschrieben.

Hinweise

ranges:: range < const ranges:: zip_view < Views... >> wird genau dann modelliert, wenn für jeden Typ Vi in Views... , const Vi das Konzept range modelliert.

Beispiel

Siehe auch

gibt einen Iterator zum Anfang zurück
(öffentliche Elementfunktion)
gibt einen Sentinel zurück, der das Ende eines Bereichs anzeigt
(Anpassungspunktobjekt)