Я использовал std :: ignore (1, ',') перед первой getline (iss, name, ',') и получил ошибку "ignore", которая не объявлена в этом пространстве имен "std".
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 работают, но игнорирование не работает?
ignore
- это функция-член.
iss.ignore(1, ',');
iss.ignore()
поскольку он хочет игнорировать только один символ.
std::ignore
.