У меня есть этот простой код:
std::ifstream ifs;
ifs.open ("test.txt", std::ifstream::in);
char c = ifs.get();
while (ifs.good()) {
std::cout << c;
c = ifs.get();
}
ifs.close();
Но я получаю много ошибок? такие как:
Error 9 error C3083: 'ifstream': the symbol to the left of a '::' must be a type test.cpp
Error 8 error C2228: left of '.open' must have class/struct/union test.cpp
и так далее.
У меня есть эти определения в начале файла
#include <iostream>
#include <fstream>
#include "stdafx.h"
using namespace std;
Я использую VS2012 в консольном приложении.
редактировать1:
Полный код выглядит следующим образом:
void ReadRawImages::Read(int frameNumber)
{
std::ifstream ifs;
ifs.open ("test.txt", std::ifstream::in);
char c = ifs.get();
while (ifs.good()) {
std::cout << c;
c = ifs.get();
}
ifs.close();
}
Я также отметил, что у меня есть эти предупреждения:
Warning 1 warning C4627: '#include <iostream>': skipped when looking for precompiled header use test.cpp
Warning 2 warning C4627: '#include <fstream>': skipped when looking for precompiled header use test.cpp
std::ifstream ifs;
? Возможно, вы где-то раньше пропустили точку с запятой. - person Roger Rowland   schedule 23.05.2013