table of contents
        
      
      
    | std::basic_string::append_range(3) | C++ Standard Libary | std::basic_string::append_range(3) | 
NAME¶
std::basic_string::append_range - std::basic_string::append_range
Synopsis¶
 template< container-compatible-range<CharT> R >
    (since C++23)
  
   constexpr std::basic_string& append_range( R&& rg );
  
   Appends all characters from the range rg.
  
   Equivalent to
  
   return append(std::basic_string( std::from_range, std::forward<R>(rg),
    get_allocator()));
Parameters¶
rg - a container compatible range
Return value¶
*this
Complexity¶
Linear in size of rg.
Exceptions¶
If the operation would result in size() > max_size(), throws std::length_error.
  
   If an exception is thrown for any reason, this function has no effect (strong
  
   exception safety guarantee).
Notes¶
 Feature-test macro Value Std Feature
  
   __cpp_lib_containers_ranges 202202L (C++23) member functions that accept
    container
  
   compatible range
Example¶
// Run this code
  
   #include <cassert>
  
   #include <string>
  
   int main()
  
   {
  
   std::string head{"long long"};
  
   const auto tail = {' ', 'i', 'n', 't'};
  
   #ifdef __cpp_lib_containers_ranges
  
   head.append_range(tail);
  
   #else
  
   head.append(tail.begin(), tail.end());
  
   #endif
  
   assert(head == "long long int");
  
   }
See also¶
 append appends characters to the end
  
   (public member function)
| 2024.06.10 | http://cppreference.com |