perfetto, per la sostituzione delle carte risolto così:
codice:
...
	vector<Carta>::iterator it = mano.begin() + i;
	mano.insert(it, c);
	mano.erase(it+1);
...
edit: se qualcuno ora mi spiegasse xhè pop_back() non funzia o se ha qualche altra soluzione sarebbe veramente tutto ok.