Ich bin neu in Golang und immer noch versucht, meinen Kopf um Strukturen zu bekommen. Ich kann mir nicht vorstellen, wie ich es in einer Funktion erstellen und in einer anderen verwenden kann.Create struct in einer Funktion in einem anderen verwendet werden
Hier ist mein Code.
Datei 1 main.go
package main
import (
"github.com/asolopovas/docker_valet/modules"
"fmt"
)
func main {
fl := dockervalet.GetFlags()
fmt.Pringln(fl.user) // returns fl.user undefined
}
Datei 2 flags.go
package dockervalet
import (
"flag"
"fmt"
)
type Flags struct {
user string
}
func GetFlags() Flags {
var userFlag string
flag.StringVar(&userFlag, "u", "", "")
flag.StringVar(&userFlag, "user", "", "")
flag.Parse()
fl := Flags{
user: userFlag,
}
fmt.Println(fl.user) // works as expected
return fl
}
Vielen Dank im Voraus.
Structs innerhalb von Funktionen definiert _cannot_ mit anderen Funktionen geteilt werden. Sie müssen auf der Paketebene definiert sein. Aber dein Code zeigt dir nicht, dass du eines dieser Dinge tust. Also habe ich wirklich keine Ahnung, was du fragst. – Flimzy