私は次のようにファイルを書いています:
std::ofstream os; // declared somewhere earlier
std::vector<char> vec; // declared somewhere earlier
std::ostreambuf_iterator<char> oi(os);
std::copy(vec.begin(), vec.end(), oi);
std::istream_iterator
当然のことながら、 orを使用して 5 バイトを読み取る同様の方法があるかどうか疑問に思っていましたが、std::istreambuf_iterator
サポートしていないため、operator+
これを達成する方法がわかりません。
たとえば、これに近い解決策を想像しました。
std::istream_iterator<char> ii(file);
std::copy(ii, ii + 5, vec.begin());
C++14 でこれを行う方法はありますか?
PS: STL を使用したソリューションが必要なため、使用boost
はオプションではありません。