Здравствуйте, коллеги! Везде пишут, что если пишешь на С++ то нужно использовать iostream.
Но я не могу понять в чем преимущество потокового ввода-вывода?
На мой взгляд, stdio.h удобнее в использовании как для вывода в терминал, так и для файловых операций. Кстати, этот подход более соответствует философии Linux, «все есть файл».
Где-то писали, что в С++ можно использовать stdio (без «.h»), но я таковой у себя в Fedora 37 не обнаруживаю.
У меня на данный момент задумка довольно элементарная: в зависимости от ситуации назначить файл/поток для ввода-вывода.
Например: Если процесс демонизируется, то для вывода назначить log файл. Если программа работает в обычном режиме, то писать в cout/stdout, cerr/stderr.
В обычном (ламповом) С все просто:
FILE * fout = fopen("logfile", "a+");
или:
FILE * fout = stdout
А как подобное сделать с потоками?
Да и нужны ли эти потоки?
В чем их преимущество?