Définition de FlagSets indépendants dans GoLang
Le type FlagSet dans GoLang permet aux développeurs de définir des ensembles distincts d'indicateurs. Cette fonctionnalité s'avère particulièrement utile lors de l'implémentation de sous-commandes dans une interface de ligne de commande. Cependant, la question se pose : comment parvenir efficacement à cette séparation ?
FlagSets indépendants en pratique
Pour établir des FlagSets autonomes, il est crucial de faire la distinction entre les sous-commandes et d'invoquer ensuite Analyser sur le FlagSet correspondant. Prenons l'exemple amélioré suivant :
f1 := flag.NewFlagSet("f1", flag.ContinueOnError) silent := f1.Bool("silent", false, "") f2 := flag.NewFlagSet("f2", flag.ContinueOnError) loud := f2.Bool("loud", false, "") switch os.Args[1] { case "apply": if err := f1.Parse(os.Args[2:]); err == nil { fmt.Println("apply", *silent) } case "reset": if err := f2.Parse(os.Args[2:]); err == nil { fmt.Println("reset", *loud) } }
Dans ce code, nous définissons deux FlagSets, un pour la commande apply et un autre pour la commande reset. L'instruction switch identifie la sous-commande et appelle Parse sur le FlagSet désigné, isolant efficacement les indicateurs pour chaque commande.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!