我在第一个getline(iss,name,',')之前使用了std :: ignore(1,','),并在此命名空间'std'中收到错误'ignore'未声明。
if (myfile.is_open()){
98 while ( getline (myfile,line) ) {
99 //parse line
100 string myText(line);
101 istringstream iss(myText);
102 if(!(iss>>id)) id=0;
103
104 std::ignore(iss,1,',');
105 std::getline(iss,name,',');
106 std::getline(iss,status,',');
107 std::getline(iss,email,',');
108 cout<<name<<endl;
109 Student newStudent(id,name,status,email);
为什么getline函数可以正常工作但忽略不行?
答案 0 :(得分:5)
ignore
是一个成员函数。
iss.ignore(1, ',');