У меня есть следующий фрагмент кода:
func generateBoard() {
for i := 0; i < 64; i++ {
}
}
func getRank(i int) uint8 {
return i / 8
}
В цикле я хочу позвонить getRank(i)
.Я хочу getRank
вернуть uint8
, потому что это наименее целочисленный тип, и мне не нужно больше.Проблема в том, что я не могу разделить int
на uint8
.Я не хочу приводить i
к uint8
, потому что это может быть дорого (возможно, даже распределение там происходит).Также я не хочу объявлять i
как uint8
перед циклом, например:
var i uint8
for i = 0; i < 64; i++ {
Причина Я считаю, что на низкоуровневом уровне инициализация итератора в цикле довольно оптимизирована и объявляет итератор передбыло бы также не лучшим решением.
Какова будет лучшая реализация этого?