Что выводится на консоль:
START(0,0)
GOAL(0,2)
ooox
xxoo
ooox
Я хочу иметь возможность получить подстроку точек START и GOAL, не считая скобок только пару координат. Я также хотел бы сохранить их как переменные, поскольку я хочу добавить проверку того, находятся ли точки START или GOAL вне границ сетки.
Я пытаюсь создать приложение для обхода 2D-сетки, где «x» представляет заблокированные пути, а «o» - разблокированные.
Отправной точкой всегда является нижний левый угол сетки, как показано ниже:
(0,2)(1,2)(2,2)(3,2)
(0,1)(1,1)(2,1)(3,1)
(0,0)(1,0)(2,0)(3,0)
Я пытался использовать метод .substr () с начальной и конечной точками, где я хотел бы сохранить значения, но он ничего не выводит в консоль.
void Grid::loadFromFile(const std::string& filename){
std::string line;
std::ifstream file(filename);
file.open(filename);
// Reads the file line by line and outputs each line
while(std::getline(file, line)) {
std::cout << line << std::endl;
}
std::string startPoint, goalPoint;
startPoint = line.substr(6,3);
std::cout << startPoint << std::endl;
file.close();
}
Я ожидаю, что std::cout << startPoint << std::endl;
напечатает подстроку в консоли, но она просто читает файл и печатает все, что в нем, и ничего больше.