所以我在g ++中遇到错误,说std :: get不是fstream的成员。特别是当我使用file.get时,它给了我一个错误。
这是给我错误的函数。
std::fstream& Obj::load(std::fstream& file){
file.open("123.txt", ios::in);
char name[30];
file.std::get(name, 30, ","); //This line gives an error
name(name);//sets name
file.ignore();
//more code for reading in omitted for sake of simplicity
file.close();
return file;
}
这个错误对我来说似乎有些荒谬,因为std :: get是fstream的一个成员,它来源于istream isn&#39t?
答案 0 :(得分:-1)
替换
file.std::get(name, 30, ',');
用
file.get(name, 30, ',');
你的编译器是正确的,std::get不是fstream的成员,但istream::get可用于fstream,因为它是继承的!