Фстрим не удается. Возможно, я бы создал фиктивный ostream, который не смог записать, если бы мне нужно было это проверить.
аюсь попробовать, поймать, бросить операторы в C ++ для обработки файлов, и я написал фиктивный код для перехвата всех ошибок. Мой вопрос состоит в том, чтобы проверить, правильно ли я понял, мне нужна ошибка. Теперь я могу легко проверитьinfile.fail()
просто не создавая файл с нужным именем в каталоге. Но как я смогу проверить то же самое дляoutfile.fail()
(outfile
являетсяofstream
в то время как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;
}