私は非常に大きなwchar_t配列を持っています。このwchar_t配列の一部、たとえばiとjの間からwstringを作成したいと思います。
大きなchar配列をwstringに変換してから、部分文字列を取得したくありません。
どうすればこれを行うことができますか?
イテレータペアコンストラクタを使用します。
std::wstring str(arr + i, arr + j + 1); //need one past the end
この場合、ポインターはランダムアクセスイテレーターであるため、追加は機能します。イテレータがサポートしていない場合に機能する汎用フォームの場合は、およびoperator+
を使用std::next(arr, i)
しstd::next(arr, j + 1)
ます。アレイと標準コンテナの両方で機能するため、ジェネリックスについて心配する場合std::begin
の代わりに使用できます。arr