Есть ли более простой способ передать массив через рекурсивный метод, чем преобразовать его в строку и снова собрать его внутри метода, чтобы сохранить предыдущий экземпляр этого массива для использования внутри игры.Сохранение состояния массива внутри рекурсивного метода
Метод только петли до достижения желаемой глубины и пузырится до тех пор, пока не будут отображены все возможные состояния игры.
Пример C#:
public class Gametree
{
private char[] mapArr;
private void execute(char[] map){
mapArr = map;
//do stuff to mapArr//
var child = new Gametree();
child.execute(mapArr);
}
}
В качестве альтернативы Array.Copy и Array.Clone, как описано здесь, http://stackoverflow.com/questions/198496/difference-between-the-system-array-copyto-and -системы-массив-клон. – PhillipH
Я попробовал child.execute (mapArr.toList(). ToArray()); , но где-то вдоль строки он все еще меняет неправильный экземпляр :( – Kortgat
@Kortgat использовать Clone или Copy, я не уверен на 100% в отношении toListtoArray. – Master117