Режимы ios::out и ios::trunc отличаются целями открытия файлов в C++.
ios::out указывает, что файл предназначен для вывода (записи). 15 Если файл уже существует, его содержимое будет усечено, если нет — создан новый файл. 5
ios::trunc, в свою очередь, означает, что при открытии файла для записи предшествующее содержимое существующего файла с таким же именем будет удалено, а длина файла станет равной нулю. 2
Режимы можно комбинировать с помощью поразрядной логической операции «или» (|). 4 Например, ios::out | ios::trunc — открытие файла для записи с предварительным очищением. 4