Я не могу найти авторитетную документацию в Интернете.
Редактировать Я даже не могу найти подходящую ссылку в своей копии Книга Йосуттиса , 8-й печати. Это должно было быть в разделе 13.9 с. 627-631
Эмпирические данные свидетельствуют о том, что это избыточный IFF, ни один из std :: ios :: in или std :: ios: out не передан:
#include <fstream>
#include <iostream>
int main(int argc, char** args)
{
std::ifstream ifs(args[0], std::ios::binary);
std::cout << ifs.rdbuf() << std::flush;
return 0;
}
Успешно:
test | md5sum
md5sum test
показать ту же самую хэш-сумму.
// ...
std::ifstream ifs(args[0], std::ios::out | std::ios::binary);
не удастся (вывод нулевых байтов)
test | wc -c # shows 0