Код, который нужно перенести :
var moves = [];
for (var i = 0; i < availSpots.length; i++){
var move = {};
move.index = newBoard[availSpots[i]];
newBoard[availSpots[i]] = player;
if (player == aiPlayer){
var result = minimax(newBoard, huPlayer);
move.score = result.score;
}
else{
var result = minimax(newBoard, aiPlayer);
move.score = result.score;
}
newBoard[availSpots[i]] = move.index;
moves.push(move);
Я не могу перевести это все в C# код из-за кучи всяких var. Например, как можно перевести код
var moves = [];
, если это массив обьектов со свойствами score( Хотя может быть что-то сказал неправильно, голова уже болит от этих страданий.
По этому куску кода я лично могу сделать только такие комментарии.
//создается динамический массив или вроде того
//в C# здесь можно использовать var moves = new List<Move>();
var moves = [];
//перебираем в цикле массив availSpots
for (var i = 0; i < availSpots.length; i++){
//создаем объект
//в C# здесь можно создать экземпляр var move = new Move();
var move = {};
//присвоение "посадочного места на борту" для move
//в C# было что-то типа move.Index = _newBoard[availSpots[i]];
move.index = newBoard[availSpots[i]];
//занимаем "посадочное место на борту" экземпляром игрока
newBoard[availSpots[i]] = player;
//если игрок равен или является ботом (префикс ai указывает на это)
if (player == aiPlayer){
//вычисляем (вероятно экземпляр какого-то класса) с пом. функции
//в которую передается массив того кто на борту
//и игрок-типа-человек, вероятно префикс 'hu' означает human,т.е человек
var result = minimax(newBoard, huPlayer);
//в C# было бы move.Score = result.Score;
//сам score вероятно интовый
move.score = result.score;
}
else{
//иначе вычисляем результат в сравнении с ботом
var result = minimax(newBoard, aiPlayer);
move.score = result.score;
}
//динамическая типизация, она такая...:)
//тут вместо экземпляра игрока присваиваем индекс
newBoard[availSpots[i]] = move.index;
//на C# было бы moves.Add(move);
moves.push(move);
Виртуальный выделенный сервер (VDS) становится отличным выбором
Не понимаю, для чего нужна переменная $collectВызывается ли функция-генератор collect() при ее присваивании переменной $collect? Или она вызывается только...
Делаю сайт на Yii2Использую разные виджеты, например, GridView