-3

私は非常に大きなwchar_t配列を持っています。このwchar_t配列の一部、たとえばiとjの間からwstringを作成したいと思います。

大きなchar配列をwstringに変換してから、部分文字列を取得したくありません。

どうすればこれを行うことができますか?

4

1 に答える 1

7

イテレータペアコンストラクタを使用します。

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

于 2013-03-17T21:13:38.763 に答える