C++ Utilizzando Output Iterator


Esempio

Diversi valori dello stesso tipo possono essere restituiti passando un iteratore di output alla funzione. Questo è particolarmente comune per le funzioni generiche (come gli algoritmi della libreria standard).

Esempio:

template<typename Incrementable, typename OutputIterator>
void generate_sequence(Incrementable from, Incrementable to, OutputIterator output) {
    for (Incrementable k = from; k != to; ++k)
        *output++ = k;
}

Esempio di utilizzo:

std::vector<int> digits;
generate_sequence(0, 10, std::back_inserter(digits));
// digits now contains {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}