Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

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

      From cppreference.com
      <cpp‎ |ranges‎ |concat view
       
       
      Ranges library
      Range adaptors
       
      std::ranges::concat_view
      Member functions
      concat_view::end
      Deduction guides
      Iterator
      Member functions
      Non-member functions
       
      constexprauto end()
          requires(!(/*simple-view*/<Views>&& ...));
      (1)(since C++26)
      constexprauto end()const

          requires(ranges::range<const Views>&& ...)&&

                       /*concatable*/<const Views...>;
      (2)(since C++26)

      Returns aniterator orstd::default_sentinel that compares equal to the past-the-end iterator of theconcat_view.

      1) Equivalent to

      constexprauto N= sizeof...(Views);
      ifconstexpr(ranges::common_range<Views...[N-1]>)
          return iterator <false>(this,std::in_place_index<N-1>,
                                 ranges::end(std::get<N-1>(views_ )));
      else
          returnstd::default_sentinel;

      .
      2) Equivalent to

      constexprauto N= sizeof...(Views);
      ifconstexpr(ranges::common_range<const Views...[N-1]>)
          return iterator <true>(this,std::in_place_index<N-1>,
                                ranges::end(std::get<N-1>(views_ )));
      else
          returnstd::default_sentinel;

      .

      [edit]Return value

      As described above.

      [edit]Example

      The preliminary version can be checked out onCompiler Explorer.

      Run this code
      #include <concepts>#include <iterator>#include <ranges> int main(){staticconstexprint p[]{37,42,69};staticconstexprauto q={19937,1729};constexprauto cat= std::ranges::views::concat(p, q);    static_assert(notstd::same_as<std::default_sentinel_t, decltype(cat.end())>);    static_assert(cat.end()[-1]==1729);}

      [edit]See also

      returns an iterator to the beginning
      (public member function)[edit]
      returns a sentinel indicating the end of a range
      (customization point object)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/ranges/concat_view/end&oldid=176610"

      [8]ページ先頭

      ©2009-2025 Movatter.jp