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