標準のストリームクラスで、

istream.read(buffer, offset, streamsize) ではなく
istream.read(buffer, streamsize)

という形式になっている理由がわかりません。

ストリームの使用者は
ランダムアクセスよりも順次アクセスの頻度が高いと仮定して、
後者の性能を高めるためでしょうか?