Я взял переменную типа var u = make(map[string]interface{})
, что означает, что ключ может содержать строку / int или другую карту.
Когда я делаю следующее, это выдает ошибку cannot use v (type interface {}) as type string in return argument: need type assertion
, которая выглядит очевидной как обобщенная c карта понятия не имеет, что она должна искать. Как я могу решить проблему? Код приведен ниже (ОБРАТИТЕ ВНИМАНИЕ, что в настоящее время карта полностью пуста)
var u = make(map[string]interface{})
// Get function retrieves the value of the given key. If failed, it returns error.
func Get(k string) (string, error) {
v, found := u[k]
println(reflect.Type(v))
if found {
v = u[k]
return v, nil
}
return v, errors.New(-1)
}