これは、エラーのあるコードの一部です。
std::vector<int> loadNumbersFromFile(std::string name)
{
std::vector<int> numbers;
std::ifstream file;
file.open(name); // the error is here
if(!file) {
std::cout << "\nError\n\n";
exit(EXIT_FAILURE);
}
int current;
while(file >> current) {
numbers.push_back(current);
file.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
return numbers;
}
そして、まあ、何が起こっているのかわかりません。全体がVSで適切にコンパイルされます。ただし、これを dev cpp でコンパイルする必要があります。
上記のコードでエラーをスローする行をコメントアウトしました。エラーは次のとおりです。
no matching function for call 'std::basic_ifstream<char>::open(std::string&)
no matching function for call 'std::basic_ofstream<char>::open(std::string&)
numeric_limits is not a member of std
コードのさまざまな部分で、またはのようなエラーが発生max() has not been declared
しますが、これらはクラスに存在しiostream
、すべてが VS で機能します。
このエラーが発生するのはなぜですか?