Namespaces
Variants
Views
Actions

std::char_traits<CharT>::move

From cppreference.com
< cpp‎ | string‎ | char traits
static char_type*
  move( char_type* dest, const char_type* src, std::size_t count );
(until C++20)
static constexpr char_type*
  move( char_type* dest, const char_type* src, std::size_t count );
(since C++20)

Copies count characters from the character string pointed to by src to the character string pointed to by dest.

Performs correctly even if the ranges [src, src + count) and [dest, dest + count) overlap.

Contents

[edit] Parameters

dest - pointer to a character string to copy to
src - pointer to a character string to copy from
count - the number of characters to copy

[edit] Return value

dest

[edit] Exceptions

Throws nothing.

[edit] Complexity

Linear.

[edit] Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior
LWG 7 C++98 the copy was guaranteed to perform correctly if
src is in [dest, dest + count), but not the other
way round (i.e. dest is in [src, src + count))
also guaranteed