Biblioteca de Algoritmo C ++ - Função fill_n ()

Descrição

A função C ++ std::algorithm::fill_n()atribui valor aos primeiros n elementos da sequência apontada por primeiro .

Declaração

A seguir está a declaração do cabeçalho da função std :: algorithm :: fill_n () std :: algorithm.

C ++ 98

template <class OutputIterator, class Size, class T>
OutputIterator fill_n (OutputIterator first, Size n, const T& val);

Parâmetros

  • first - Saída dos iteradores para as posições iniciais.

  • n - Número de elementos a preencher.

  • val - Valor a ser usado para preencher a faixa.

Valor de retorno

Retorna um iterador apontando para o elemento que segue o último elemento preenchido.

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.

Exemplo

O exemplo a seguir mostra o uso da função std :: algorithm :: fill_n ().

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main(void) {
   vector<int> v(5, 1);

   fill_n(v.begin() + 2, 3, 4);

   cout << "Vector contains following elements" << endl;

   for (auto it = v.begin(); it != v.end(); ++it)
      cout << *it << endl;

   return 0;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

Vector contains following elements
1
1
4
4
4