Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私はC++プログラムで巨大な(最大2GBの)文字列とそのスライスを扱っています。Cスタイルの文字列は、このような状況では信頼できないように見えますが、簡単にスライスできます(最後に「\ 0」がない場合)。一方、私が理解したように、std :: string :: substrはスライスをコピーするため、メモリ使用量を合理的に保つために、インデックスごとに少なくとも1つの追加の追加操作(インデックス+ベース)を実行する必要があります。
最も一般的な解決策は、必要なインターフェイスを備えたスライス オブジェクトを作成し、それを使用することです。スライス オブジェクトは、開始と終了の 2 つのイテレータで構成できます。