これはHow to convert a vector<char*> to a vector<string>/stringの反対です。ベクトル<string>をベクトルに変換する方法<char*>
私はvector<char*>
で動作するいくつかのレガシールーチンを持っていますので、vector<string>
を変換する必要があります。ここで
は、私が出てくるものです:
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';
}
は、この正しいですか?
これを実装するより良い方法はありますか?
p.s.もちろん最後に私が持っている:
for (int i=0; i<strVec.size();i++) {
delete charVec[i];
}
あなたの質問は何ですか? –
質問がありますか?すでに実装されているようです。 – vu1p3n0x
新しいベクターがその文字列を所有する必要があるか、または他のベクターの文字列の一時的な表示が必要かどうかによって異なります。 – Galik