Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::list<T,Allocator>::insert_range

      From cppreference.com
      <cpp‎ |container‎ |list

      [edit template]
       
       
       
      std::list
      Member functions
      Non-member functions
      (until C++20)(until C++20)(until C++20)(until C++20)(until C++20)
      Deduction guides(C++17)
       
      template<container-compatible-range<T> R>
      iterator insert_range( const_iterator pos, R&& rg);
      (since C++23)
      (constexpr since C++26)

      Inserts, in non-reversing order, copies of elements inrg beforepos.

      No iterators or references are invalidated.

      Each iterator in the rangerg is dereferenced exactly once.

      Ifrg overlaps with*this, the behavior is undefined.

      Contents

      [edit]Parameters

      pos - iterator before which the content will be inserted (pos may be theend() iterator)
      rg - acontainer compatible range, that is, aninput_range whose elements are convertible toT
      Type requirements
      -
      IfT is notEmplaceConstructible intolist from*ranges::begin(rg), the behavior is undefined.

      [edit]Return value

      An iterator to the first element inserted into*this, orpos ifrg is empty.


      Notes

      Feature-test macroValueStdFeature
      __cpp_lib_containers_ranges202202L(C++23)Ranges-aware construction and insertion

      [edit]Example

      Run this code
      #include <algorithm>#include <cassert>#include <iterator>#include <list>#include <vector> int main(){auto container=std::list{1,2,3,4};auto pos=std::next(container.begin(),2);assert(*pos==3);constauto rg=std::vector{-1,-2,-3}; #ifdef __cpp_lib_containers_ranges    container.insert_range(pos, rg);#else    container.insert(pos, rg.cbegin(), rg.cend());#endifassert(std::ranges::equal(container,std::list{1,2,-1,-2,-3,3,4}));}

      [edit]See also

      inserts elements
      (public member function)
      adds a range of elements to the beginning
      (public member function)
      adds a range of elements to the end
      (public member function)
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/container/list/insert_range&oldid=155603"

      [8]ページ先頭

      ©2009-2025 Movatter.jp