Je n'ai pas trouvé de bonne ressource pour utiliser les interface{}
types. Par exemple
package main
import "fmt"
func weirdFunc(i int) interface{} {
if i == 0 {
return "zero"
}
return i
}
func main() {
var i = 5
var w = weirdFunc(5)
// this example works!
if tmp, ok := w.(int); ok {
i += tmp
}
fmt.Println("i =", i)
}
Connaissez-vous une bonne introduction à l'utilisation de Go interface{}
?
questions spécifiques:
- comment obtenir le "vrai" type de w?
- existe-t-il un moyen d'obtenir la représentation sous forme de chaîne d'un type?
- existe-t-il un moyen d'utiliser la représentation sous forme de chaîne d'un type pour convertir une valeur?