To jest stara wersja strony!
Funkcja copy kopiuje elementy od pierwszego do ostatniego z kontenera pierwszego wstawiając je od elementu result kontenera docelowego. Używa przypisania *result = *first, *(result + 1) = *(first + 1) …
Elementy [first, last) z kontenera wzorcowego zostają skopiowane do elementów [resutl, result + (last-first)) kontenera docelowego.
Analogicznie działa funkcja copy_n, tylko zamiast końca przedziału last pobiera liczbę elementów do skopiowania - n.
Elementy [first, last) z kontenera wzorcowego zostają skopiowane do elementów [resutl, result + n) kontenera docelowego.
Elementy są kopiowane od pierwszego do ostatniego.
copy w pliku nagłówkowym algorithm:
template <class InputIterator, class OutputIterator> OutputIterator copy(InputIterator first, InputIterator last, OutputIterator result);
copy_n w pliku nagłówkowym algo.h:
template <class InputIterator, class Size, class OutputIterator> OutputIterator copy_n(InputIterator first, Size count, OutputIterator result);
* first - iterator wskazujący na pierwszy element do kopiowania z kontenera * last - iterator na jeden element za ostatnim do kopiowania z kontenera * result - iterator na pierwszy element docelowego kontenera * count - liczba elementów do skopiowania
* n >= 0 * [first, last) jest poprawnym przedziałem * [first, last) nie nachodzi na result. Jeśli nachodzi to wynik może być inny niż zamierzenia autora. Elementy są kopiowane od pierwszego do ostatniego, więc ostatnie elementy będą niepoprawne. * [result, result + n) lub [result, result + (last-first) ) są poprawnymi przedziałami
Funkcja zwraca iterator na pierwszy za ostatnim zmienionm w zbiorze docelowym elementem.
Algorytmy copy i copy_n mają złożoność liniową i równą N lub (last-first).
} </code>