Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::list<T,Allocator>::append_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>
      void append_range( R&& rg);
      (since C++23)
      (constexpr since C++26)

      Inserts copies of elements from the rangerg beforeend(), in non-reversing order.

      No iterators or references are invalidated.

      Each iterator inrg is dereferenced exactly once.

      Contents

      [edit]Parameters

      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]Complexity

      Linear in size ofrg. The number of calls to the constructor ofT is exactly equal to thestd::ranges::size(rg)).

      [edit]Exceptions

      If an exception is thrown for any reason, this function has no effect (strong exception safety guarantee).

      Notes

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

      [edit]Example

      Run this code
      #include <cassert>#include <list>#include <vector> int main(){auto head=std::list{1,2,3,4};constauto tail=std::vector{-5,-6,-7};#ifdef __cpp_lib_containers_ranges    head.append_range(tail);#else    head.insert(head.end(), tail.cbegin(), tail.cend());#endifassert((head==std::list{1,2,3,4,-5,-6,-7}));}

      [edit]See also

      adds a range of elements to the beginning
      (public member function)
      inserts a range of elements
      (public member function)
      adds an element to the end
      (public member function)
      constructs an element in-place at the end
      (public member function)
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/container/list/append_range&oldid=155590"

      [8]ページ先頭

      ©2009-2025 Movatter.jp