https://play.golang.org/p/qxhocI6mjY«не поддерживает индексирование»: обеспечивает индексирование с помощью интерфейса?
В этой игре, я получаю эту ошибку: invalid operation: s[0] (type AlmostSlice does not support indexing)
Так что мне интересно, можно ли осуществить индексацию?
Учитывая-структуру, как это:
type AlmostSlice struct {
Entities []string
Id string
Stuffs string
}
Можно ли сделать поддержку индексации?
s := AlmostSlice{Id: "bar", Entities: []string{"foo"}}
... := s[0]
s[0] = "stuffs"
Например, путем реализации что-то вроде этого:
func (s *AlmostSlice) Index(i int) string {
return s.Entities[i]
}
№ из [spec] (https://golang.org/ref/spec#Index_expressions): выражение индекса обозначает «элемент массива, указатель на массив, срез, строку или карту», – JimB