Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::multimap<Key,T,Compare,Allocator>::insert_range

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

      [edit template]
       
       
       
      std::multimap
      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<value_type> R>
      void insert_range( R&& rg);
      (since C++23)
      (constexpr since C++26)

      Inserts a copy of each element in the rangerg.

      Each iterator in the rangerg is dereferenced exactly once.

      If any of the following conditions is satisfied, the behavior is undefined:

      No iterators or references are invalidated.

      Contents

      [edit]Parameters

      rg - acontainer compatible range, that is, aninput_range whose elements are convertible toT

      [edit]Complexity

      \(\scriptsize N \cdot \log(S + N)\)N·log(S+N), where\(\scriptsize S\)S issize() and\(\scriptsize N\)N isranges::distance(rg).

      [edit]Notes

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

      [edit]Example

      Run this code
      #include <iostream>#include <map>#include <utility> void println(auto,constauto& container){for(constauto&[key, value]: container)std::cout<<'{'<< key<<','<< value<<'}'<<' ';std::cout<<'\n';} int main(){auto container=std::multimap{std::pair{1,11},{3,33},{2,22},{4,44}};constauto rg={std::pair{-1,-11},{3,-33},{-2,-22}};#ifdef __cpp_lib_containers_ranges    container.insert_range(rg);#else    container.insert(rg.begin(), rg.end());#endif    println("{}", container);}

      Output:

      {-2,-22} {-1,-11} {1,11} {2,22} {3,33} {3,-33} {4,44}

      [edit]See also

      inserts elementsor nodes(since C++17)
      (public member function)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/container/multimap/insert_range&oldid=156367"

      [8]ページ先頭

      ©2009-2025 Movatter.jp