我#include
这些标题:
#include <iostream>
#include <fstream>
但是这段代码:
ifstream inFile;
仍然不会编译。可能是什么问题呢?我正在使用Visual Studio 2010,Win32 C ++。
答案 0 :(得分:4)
您可以在代码顶部放置一个using namespace std;
,这样您就不必完全符合标准C ++的资格,但是很多开发人员认为它不好。< / p>
我只是在标准内容前加上std::
,这会使代码更长:
std::cout << "Hello, world.\n";
但让我在命名空间冲突方面遇到麻烦。
以下记录显示了std::
前缀的使用:
$ cat testprog.cpp
#include <iostream>
#include <fstream>
int main (void) {
int n;
std::ifstream inFile("input.txt");
inFile >> n;
std::cout << "File contained " << n << '\n';
return 0;
}
$ cat input.txt
42
$ g++ -Wall -Wextra -o testprog testprog.cpp ; ./testprog
File contained 42
答案 1 :(得分:3)
类型为std::ifstream
。您必须完整地写出来,除非您通过其他方式将限定名称带入范围。