私は、文字列のベクトルのベクトルの各最初の文字列へのポインタを保持するベクトルを作成しようとしています。 \bin\sort
プログラムにfirst_words_in_subvecs
を渡して並べ替え/印刷します。私は、実際の文字列の新しいベクトルを作るのは、CPUと時間の無駄だと思っていました。なぜなら、とにかくそれらを渡すつもりだからです。送信したい文字列へのポインタを作成するほうが速くなると思っていますか?なぜこのコードは動作しないのですか?私は警告やエラーは出ませんが、私がそれを実行するとエラーが発生します。別のサブベクトルのアイテムへのポインタベクトルを作成するにはどうすればよいですか?
int print_sorted_subvectors(vector< vector<string> > &sorted_subsets_vec)
{
vector<string*> first_words_in_subvecs;
for(int i = 0; i < sorted_subsets_vec.size(); i++)
{
first_words_in_subvecs[i] = &sorted_subsets_vec[i][0];
}
}
あなたは['std :: sort()'](http://en.cppreference.com/w/cpp/algorithm/sort)を知っていますか? –
私は今です!それは簡単になるでしょう...フォークとbin \ sortを使用して割り当ての別の部分をソートしていましたので、もう一度使用するつもりでしたが、それはずっと簡単です...愚かなパイプ...そうです私はポイントの代わりにコピーしなければならないと思う。しかし、これはどのようにして行われますか?私はまだ興味があります。 – Marty