私はC++fstream、ifstream、ofstreamを学ぼうとしています。プロジェクトの途中で、ofstreamとifstreamを使用して同じファイルにアクセスして読み取りと書き込みを行う場合は、別のストリームを使用する前にストリームを閉じる方がよいことを学びました。
ofstreamのようにwrite_stream(...); ifstream read_stream(....);
// Accessing pointers using both read_stream, write_stream interchangebly
read_stream.read(....);
write_stream.write(....);
read_stream.close();
write_stream.close();
///
上記の場合、両方のストリームがファイル内で同じポインターを使用していると思います。そのため、ポインターの動きに注意する必要があります。そのため、read()またはwrite()を試みるたびにシークする必要があります。
私は今のところ正しいと思います。
これ以上の混乱を避けるために、私はこの形式を使用することにしました
fstream read_write_stream("File.bin",ios::in|ios::out|ios::binary);
read_write_stream.seekp(pos);
read_write_stream.seekg(pos);
read_write_stream.tellp();
read_write_stream.tellg()
read_write_stream.read(...);
read_write_stream.write(...);
read_write_stream.close()
上記のプログラムで知っておくべきバグ誘発機能はありますか?ご意見をお聞かせください