Ошибочное чтение
Имею файл типа
name x y m
OPV1 5995709.165 5563309.024 0.2121
OPV2 5994826.922 5561499.601 0.0894
OPV3 5994030.833 5561611.114 0.0322
OPV4 5993206.394 5561920.504 0.0322
Считываю:
ifstream file("data.txt");
string name;
double x, y;
double m;
while (file >> name >> x >> y >> m)
{
meas.push_back(Meas());
meas.back().name = name;
meas.back().m = m;
}
В векторе meas первый элемент инициализируется как "п»їOPV1". Не могу разобраться в причине.
Полный код:
struct Meas {
string name;
double m;
};
int main()
{
setlocale(LC_CTYPE, "rus");
vector<Meas> meas;
ifstream file("data.txt");
string name;
double x, y;
double m;
while (file >> name >> x >> y >> m)
{
meas.push_back(Meas());
meas.back().name = name;
meas.back().m = m;
}
//...
}