DenisBabarykin/SeaBattle

Исправить баг падения клиента в однопользовательской игре.

DenisBabarykin opened this issue · 2 comments

При первых выстрелах по вражескому полю во время однопользовательской игры на любом уровне сложности клиент падает.

Там была ошибка с выделением памяти в Solver, в методе fire. Я вставил QVectorNeural::real input вместо Neural::real *input , поставил выделение памяти под output не в конструкторе, а в самом методе fire, присваивая output размер, равный размеру input.length() * sizeof(Neural::real)

Решил заменить сырой указатель на output. Для этого также использовал QVector. Ещё добавил width и height -ширину и длину поля битвы. В предыдущем исправлении была ошибка с переполнением input при долгой игре. В этом коммите я задаю размер input и output при помощи width и height. Инициализирую input, output в конструкторе.