Dies ist das Gegenteil von How to convert a vector<char*> to a vector<string>/string Frage.Wie konvertiert man einen Vektor <string> in einen Vektor <char*>
Ich habe einige Legacy-Routine, die mit vector<char*>
funktioniert, also muss ich meine vector<string>
umwandeln.
Hier ist, was ich komme mit:
std::vector<char*> charVec(strVec.size(),nullptr);
for (int i=0; i<strVec.size();i++) {
charVec[i]= new char(strVec[i].size()+1);
charVec[i][strVec[i].copy(charVec[i], strVec[i].size())] = '\0';
}
Ist das richtig?
Gibt es einen besseren Weg, es zu implementieren?
p.s. natürlich am Ende habe ich:
for (int i=0; i<strVec.size();i++) {
delete charVec[i];
}
Was ist Ihre Frage? –
Haben Sie eine Frage? sieht aus, als ob Sie es bereits implementiert haben – vu1p3n0x
Es hängt davon ab, ob der neue Vektor seine Strings besitzen muss oder nur eine temporäre Ansicht der Strings im anderen Vektor benötigt. – Galik