Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::ranges::transform_view<V,F>::iterator<Const>::base

      From cppreference.com
      <cpp‎ |ranges‎ |transform view‎ |iterator
       
       
      Ranges library
      Range adaptors
       
      std::ranges::transform_view
      Member functions
      Deduction guides
      Iterator
      transform_view::iterator::base
      Sentinel
       
      constexprconstranges::iterator_t<Base>& base()const&noexcept;
      (1)(since C++20)
      constexprranges::iterator_t<Base> base()&&;
      (2)(since C++20)

      Returns the underlying iterator.

      1) Returns a reference to the underlying iterator.
      2) Move constructs the result from the underlying iterator.

      Contents

      [edit]Parameters

      (none)

      [edit]Return value

      1) A reference to the underlying iterator.
      2) An iterator move constructed from the underlying iterator.

      [edit]Example

      Run this code
      #include <algorithm>#include <iostream>#include <iterator>#include <ranges> int main(){constauto v={0,1,2,3,4};auto x2=[](int x){return x<<1;};    std::ranges::transform_view tv{ v, x2};std::ostream_iterator<int> ostr{std::cout," "};     std::ranges::copy(v, ostr),std::cout<<'\n';    std::ranges::copy(tv.base(), ostr),std::cout<<'\n';    std::ranges::copy(tv, ostr),std::cout<<'\n';}

      Output:

      0 1 2 3 40 1 2 3 40 2 4 6 8

      [edit]Defect reports

      The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

      DRApplied toBehavior as publishedCorrect behavior
      LWG 3533C++20theconst& overload ofbase returns a copy of the underlying iteratorreturns a reference
      LWG 3593C++20theconst& overload ofbase might not be noexceptmade noexcept
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/ranges/transform_view/iterator/base&oldid=134219"

      [8]ページ先頭

      ©2009-2025 Movatter.jp