Я пробую использовать операторы try, catch, throw на C ++ для обработки файлов, и я написал фиктивный код, чтобы уловить все ошибки. Мой вопрос в том, чтобы проверить, правильно ли я все понял, мне нужно, чтобы произошла ошибка. Теперь я могу легко проверить infile.fail ()
, просто не создав файл с требуемым именем в каталоге. Но как я смогу проверить то же самое для аутфайла. fail ()
( outfile
- это ofstream
, где as infile
- это ifstream
). В этом случае будет ли значение для outfile.fail ()
истинным? Пример кода
[из комментариев к ответу unapersson, упрощенный, чтобы прояснить проблему -zack]:
#include <fstream>
using std::ofstream;
int main()
{
ofstream outfile;
outfile.open("test.txt");
if (outfile.fail())
// do something......
else
// do something else.....
return 0;
}