allora, sto facendo un gioco di poker, il mazzo ha 52 carte quindi il vettore ne avrà pure 52, come prendo il 52esimo elemento con v[v.size()-1]il 52esimo non deve esistere più, ci sarà un banalissimo remove come in Java!!? pop_back() ho provato ma con questo codice non funzia, ovvero quando guardo le carte del giocatore sono tutte uguali:

codice:
Carta Mazzo::getCard()
{
	Carta last = coda[coda.size()-1];
	coda.pop_back();
	return last;
}
Cmq il problema dell'ultima è momentaneamente risolto, ora il problema più grosso è quello del cambio della carta, chiedo il numero di carte da cambiare e faccio un ciclo, per per ogni carta ne chiedo il numero(ogni carta della mano ha un id a seconda della posizione), solo che gli elementi vengono semplicemente spostati in su, ecco il codice:
codice:
...
cout << "Inizia il giocatore 1, ecco le tue carte:\n\n";
	cout << g1;
	int nums;
	cout << "\nQuante carte vuoi cambiare?(da 0 a 4)\n";
	do {
	cin >> nums;
	if(!(nums >= 0 && nums < 5)) {
		cout << "\nNumero da Da 0 a 4!\n";
	}
} while(!(nums >= 0 && nums < 5));
	system(PULISCI);
	cout << g1;
	int count = 0;
	int idCard;
	while(count < nums) {
		cout << "\nInserire numero carta da sostituire\n";
		cin >> idCard;
		if(idCard < 1 || idCard > 5) {
			cout << "\nNon valido\n";
			continue;
		}
		g1.cambia(m.getCard(), idCard-1);
		count++;
	}
	cout << g1;
	return 0;
}
cambia agisce così:
codice:
vector<Carta>::iterator I = mano.begin();
mano.insert(I+1, c);
Praticamente la domanda è come sostituire un elemento all'indice i da un nuovo elemento

aiuto! sarà anche ora di prendersi un libro su 'ste cose...