я использую отражают пакет, чтобы получить тип произвольного массива, но получитьGolang: получить тип среза
prog.go:17: cannot use sample_array1 (type []int) as type []interface {} in function argument [process exited with non-zero status]
Как получить тип из массива? Я знаю, как получить его от стоимости.
func GetTypeArray(arr []interface{}) reflect.Type {
return reflect.TypeOf(arr[0])
}
http://play.golang.org/p/sNw8aL0a5f
Это не решает проблему потенциальной паники индекса. См. Мой ответ. – Mike
@Mike Несмотря на то, что вы правы, это не вопрос (который включает в себя очень специфическую ошибку для решения), и, следовательно, он выходит из сферы действия здесь. – thwd
Название вопроса: «Golang, Go: получите тип массива», и именно этого я и искал, когда нашел его. Я не предполагаю, что это ваша ошибка или что вы ее пропустили. Однако важно, чтобы это было рассмотрено, потому что я почти использовал этот код, не заметив ошибку или тот факт, что решение было субоптимальным. Я не пытаюсь бросить вам вызов, я просто думаю, что это важно. – Mike