不抛出文件I / O异常

时间:2013-08-31 09:00:05

标签: c++ oop exception visual-studio-2012

我有这段代码试图写入日志文件。

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; “写出一些东西”; //不抛出任何异常。

0 个答案:

没有答案