voglio duplicare il contenuto del vettore e voglio loro di essere aggiunti alla fine del vettore originale cioè v[i]=v[i+n] for i=0,2,...,n-1
Bel modo per aggiungere un vettore a sé
Sto cercando un bel modo per farlo, non con un ciclo. Ho visto std::vector::insert
ma la versione iterativa vieta un iteratore a *this
(il comportamento di i.e non è definito).
ho anche provato std::copy
come segue (ma si è tradotto in errore di segmentazione):
copy(xx.begin(), xx.end(), xx.end());
possibile duplicato del [risultati errati quando si aggiunge vettore a se stessa utilizzando la copia e indietro \ _inserter] (http://stackoverflow.com/questions/11511510/wrong-results-when-appending-vector-to-itself-using-copy-and-back-inserter) –
@BenVoigt, per essere onesti, quando ho fatto quella domanda, l'ho provato e voluto per sapere perché non ha funzionato. In realtà non avevo bisogno di una soluzione di lavoro elegante, quindi nei commenti ci sono solo menzioni. – chris
Devo chiedermi se la maggior parte delle persone avrebbe avuto l'implementazione giusta la prima volta se l'hanno codificata con un ciclo. – MarkB