A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://en.cppreference.com/w/cpp/language/../memory/ranges/../../algorithm/ranges/copy_n.html below:

std::ranges::copy_n, std::ranges::copy_n_result - cppreference.com

1)

Copies exactly

n

values from the range beginning at

first

to the range beginning at

result

by performing

*(result + i) = *(first + i)

for each integer in

[​0​n)

. The behavior is undefined if

result

is within the range

[firstfirst + n)

(

ranges::copy_backward

might be used instead in this case).

The function-like entities described on this page are algorithm function objects (informally known as niebloids), that is:

[edit] Parameters first - the beginning of the range of elements to copy from n - number of the elements to copy result - the beginning of the destination range [edit] Return value

ranges::copy_n_result{first + n, result + n} or more formally, a value of type ranges::in_out_result that contains an input_iterator iterator equals to ranges::next(first, n) and a weakly_incrementable iterator equals to ranges::next(result, n).

[edit] Complexity

Exactly n assignments.

[edit] Notes

In practice, implementations of std::ranges::copy_n may avoid multiple assignments and use bulk copy functions such as std::memmove if the value type is TriviallyCopyable and the iterator types satisfy contiguous_iterator. Alternatively, such copy acceleration can be injected during an optimization phase of a compiler.

When copying overlapping ranges, std::ranges::copy_n is appropriate when copying to the left (beginning of the destination range is outside the source range) while std::ranges::copy_backward is appropriate when copying to the right (end of the destination range is outside the source range).

[edit] Possible implementation [edit] Example

Output:

"ABCD"
in[5] = 'F'
out[5] = 'f'
[edit] See also

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4