В настоящее время я пишу программу для реализации алгоритма Дейкстры и решил использовать объект карты для хранения вершин (ключ карты) и связанных вершин в паре с расстоянием пути (значение карты). Связанные вершины соединяются с расстояниями как пара координат. Пример ввода текстового файла:
1 2,3 3,2
2 4,4
3 2,1 4,2 5,3
4 5,2 6,1
5 6,2
6 1,9
Первое число в каждой строке будет считываться как ключ, где пары координат будут считываться в вектор, инициализированный для хранения пар.
Я пытался использовать >> с фиктивной для запятой, где a и b - такие координаты, как:
for(myfile >> key >> a >> dummy >> b){
//assignment to map here
}
Но, похоже, это не сработает, потому что в одной строке может быть более одной пары координат.
Как бы я поступил об этом? Я новичок в C ++, и файлы все еще немного ошеломляют, любая помощь или пара шагов в правильном направлении были бы великолепны.