我有这段代码试图写入日志文件。
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 如果文件不存在就不会创建文件,但问题是,即使它没有创建新文件,它也不会抛出任何异常,而且我m 能够“写入”到不存在的文件,代码如下: log << "Write somthing"; //不抛出任何异常。