Итак, у меня есть функция, которая сдвигает некоторые троичные значения в массиве на требуемую величину, но когда я сдвигаю любой массив, (b) значения (я) (справа, если смещается влево, и слева, если смещается вправо)всегда будет заменено на ноль.Вот мой код:
let ( <<| ) (a:FalseTrit[]) (b:int) =
array.Copy(a, b, a, 0, a.Length - 1)
array.Clear(a, a.Length - b, b)
let ( |>> ) (a:FalseTrit[]) (b:int) =
array.Copy(a, 0, a, b, a.Length - b)
array.Clear(a, 0, b)
Я не смог найти ответы в Интернете.Есть ли лучший способ сделать это, или я что-то не так сделал?Заранее спасибо.