home | help
std::basic_...append_range(3)  C++ Standard Libary std::basic_...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)

http://cppreference.com 	   2024.06.10	   std::basic_...append_range(3)

home | help