◐ Shell
clean mode source ↗

std::rotate_copy - cppreference.com

De cppreference.com

<metanoindex/>

<tbody> </tbody>

Definido no cabeçalho

<algorithm>

template< class ForwardIt, class OutputIt > OutputIt rotate_copy( ForwardIt first, ForwardIt n_first, ForwardIt last, OutputIt d_first );

Copia os elementos da gama [first, last), para outro intervalo de início d_first de tal maneira, que o elemento n_first torna-se o primeiro elemento da nova gama e n_first - 1 torna-se o elemento anterior.

Original:

Copies the elements from the range [first, last), to another range beginning at d_first in such a way, that the element n_first becomes the first element of the new range and n_first - 1 becomes the last element.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Parâmetros

first, last -

a gama de elementos para copiar

Original:

the range of elements to copy

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

n_first -

o elemento para mover para o início do intervalo de novo

Original:

the element to move to the beginning of the new range

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

d_first -

início do intervalo de destino

Original:

beginning of the destination range

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Type requirements
-ForwardIt must meet the requirements of ForwardIterator.
-OutputIt must meet the requirements of OutputIterator.

Valor de retorno

iterador de saída para o elemento passado o último elemento copiado.

Original:

Output iterator to the element past the last element copied.

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Possível implementação

template<class ForwardIt, class OutputIt>
OutputIt rotate_copy(ForwardIt first, ForwardIt n_first,
                           ForwardIt last, OutputIt d_first)
{
    d_first = std::copy(n_first, last, d_first);
    return std::copy(first, n_first, d_first);
}

Exemplo

Complexidade

linear, em que a distância entre first e last

Original:

linear in the distance between first and last

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Veja também

gira a ordem dos elementos em forma de intervalo

Original:

rotates the order of elements in a range

The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.


(modelo de função) [edit]