Biblioteca de Algoritmos C ++ - Função copy_n ()
Descrição
A função C ++ std::algorithm::copy_n()copia os primeiros n números para um novo local. Se o valor de n for negativo, a função não fará nada.
Declaração
A seguir está a declaração para o cabeçalho da função std :: algorithm :: copy_n () std :: algorithm.
C ++ 11
template <class InputIterator, class Size, class OutputIterator>
OutputIterator copy_n (InputIterator first, Size n, OutputIterator result);
Parâmetros
first - Insira iteradores nas posições iniciais da sequência pesquisada.
n - Número de elementos a serem copiados.
result - O iterador de saída para a posição inicial na nova sequência.
Valor de retorno
Retorna um iterador para o final do intervalo de destino onde os elementos foram copiados.
Exceções
Lança uma exceção se a atribuição de elemento ou uma operação em um iterador lança uma exceção.
Observe que os parâmetros inválidos causam um comportamento indefinido.
Complexidade de tempo
Linear na distância entre o primeiro e o último .
Exemplo
O exemplo a seguir mostra o uso da função std :: algorithm :: copy_n ().
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(void) {
vector<int> v1 = {1, 2, 3, 4, 5};
vector<int> v2(3);
copy_n(v1.begin(), 3, v2.begin());
cout << "Vector v2 contains following elements" << endl;
for (auto it = v2.begin(); it != v2.end(); ++it)
cout << *it << endl;
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
Vector v2 contains following elements
1
2
3