是ifstream还是ofstream非标准c ++标头?

时间:2016-07-05 18:24:37

标签: c++ visual-c++ ifstream ofstream

好的,所以我编写了一个涉及File-IO的C ++控制台应用程序。在c ++中,要应用文件io,您可以导入三个标头中的一个,即<ifstream><ofstream><fstream>。在Visual Studio Community 2015中,我首先写了这段代码:

#include <ifstream>
int main()
{
    std::ifstream inf("testingifstream.txt");
}

我立刻注意到的第一件事是,Intellisense给了我一个错误,指出它在打开ifstream时出错,因为它“未找到”。在另一个论坛发帖后,我得到了使用<fstream>标题的解决方案,因为它有ifstream和ofstream的类,然后我的代码工作了。但我只需要ifstream类,所以我认为我不必将fstream引入。这引出了我的问题,是Windows Visual Studio的ifstream和ofstream非标准头文件,有什么方法可以包含它们吗?

2 个答案:

答案 0 :(得分:7)

是的,唯一的标准标题是<fstream>,包含ifstreamofstream类(当然还有fstream)。

  

[17.6.1.2] C ++标准库提供了55个C ++库头,如表14所示。

在表格中,没有<ifstream><ofstream>

答案 1 :(得分:1)

标题对于Windows是非标准的。你不能包含它们。