我有这段代码试图写入日志文件。
Logger::Logger(void) //constructor
{
try{
log.open("lodg.txt", std::fstream::in); //Open existing file.
this->writeLog("Logger started", Severity::INFO); //Add line to the log file,
}catch(fstream::failure e)
{
cerr << "File I/O error." << endl;
cout << e.what() << endl;
}
}
现在我知道在这种情况下fstream :: in如果不存在则不会创建文件, 但问题是,即使它没有创建新文件,它也不会抛出任何异常,我能够“写”到不存在的文件,代码如下: log&lt;&lt; “写出一些东西”; //不抛出任何异常。