C ++中的文件流

时间:2019-05-27 16:07:43

标签: c++

我正在尝试了解抛出异常,但是在打开一个不存在的文件时却遇到了这个奇怪的问题,该文件基本上根本没有错误。你们可以检查某事是否错误吗? P / s:我正在使用visualstudio 2019,我也在代码块中对其进行了测试。

 class noFileException : public std::exception 
 {
 public:
  virtual const char* what() const throw() {
    return "Data is not exist";
  }
 }error;

//main()
 try
 {
    std::fstream file("T");
    file << "dcm";
    if (!file.good())
        throw error;
    if (file.fail()) {
        std::cout << "Error" << "\n";
    }
    if (!file.is_open()) {
        throw error;
    }

}
catch (const noFileException&)
{
    std::cout << error.what() << std::endl;
}

0 个答案:

没有答案