文字列型のベクトルにデータを挿入しようとしていて、文字列のメモリが定期的に更新されています。これらのプロセスでは、私はサイズを更新するたびにメモリの再割り当てが行われるため、リザーブ機能が問題をほぼ解決していることも読み取っています。 - >String & vectorC++でVector Of Stringsのreserve()関数
私のベクターは1024以上のスロットが必要ではなく、各文字列には10文字のスペースが必要です。 私のベクトル用に1024のメモリスロットを予約しました。
vector<string> power_set;
power_set.reserve(1024);
しかし、ベクトルスロット内にある文字列のメモリスロットを予約する方法はありますか?
ありがとうございました。
文字列に 'reserve()'関数があります。したがって、コンテナを繰り返し処理し、各文字列に十分なスペースを確保することができます。 –
'std :: string'の代わりに' std :: array 'を使うことを検討しましたか? –
小さな文字列の最適化が割り当てを回避するので、実際には10文字の文字列の予約を呼び出す必要はありません。 – Timbo