Składnia
#include <algorithm>
namespace std
{
template < typename BidIt1, typename BidIt2 >
BidIt2 copy_backward( BidIt1 first, BidIt1 last, BidIt2 dest );
}
Opis szczegółowy
Kopiuje elementy z zakresu źródłowego do docelowego, którego końcem jest
dest, iterując przez zakres źródłowy i przypisując je do elementów w zakresie docelowym, zaczynając od
ostatniego elementu.
Funkcja rozpoczyna się kopiowaniem
*( last - 1 )
do
*( result - 1 )
i kontynuuje kopiowanie elementów poprzedzających je, dopóki nie osiągnięto
first (które także jest kopiowane).
Zakres źródłowy musi być poprawny. Misjce docelowe musi być wystarczająco duże do przechowania wszystkich elementów zakresu źródłowego.
Jeżeli zakresy się pokrywają w taki sposób, że
dest wskazuje na element w zakresie
[first, last), zamiast copy_backward powinno się użyć
copy.
Argumenty
Wartość zwracana
Iterator dwukierunkowy wskazujący na pierwszy element zakresu docelowego.
Przykład
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int a[ 8 ] = { 1, 2, 3, 4, 5, 6, 7, 8 };
int b[ 8 ] = { 4, 8, 11, 42, 69, 74, 666, 1000002 };
cout << "Tablica a przed kopiowaniem: \n";
for( int i = 0; i < 8; i++ )
{
cout << a[ i ] << '\n';
}
copy_backward( b, b + 8, a + 8 );
cout << "Tablica a po kopiowaniu: \n";
for( int i = 0; i < 8; i++ )
{
cout << a[ i ] << '\n';
}
}
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.