Wenn ich habe:golang: convert struct Zeiger auf eine Schnittstelle {}
type foo struct{
}
func bar(baz interface{}) {
}
Die oben in Stein gemeißelt sind - ich kann nicht foo oder bar ändern. Außerdem muss baz zurück in einen foo struct Zeiger in der Leiste konvertiert werden. Wie kann ich & foo {} in die Schnittstelle {} umwandeln, damit ich sie als Parameter beim Aufruf von Balken verwenden kann?
Was ist, wenn Sie nicht die Art der Schnittstelle kennen? 'baz' in Ihrem Beispiel –
@JuandeParras: Wenn Sie nicht wissen, welche Art von Typen' baz' sein könnte, dann müssen Sie mit Reflection arbeiten ('import reflect''). So können Pakete wie 'encoding/json' prinzipiell jeden Typ verschlüsseln, ohne vorher zu wissen. – ANisus
Gibt es eine Möglichkeit, dies mit Slices zu tun? – jocull