Set Bendera Bebas dalam GoLang
Pengenalan:
Set Bendera dalam Go menyediakan mekanisme untuk menentukan dan menghuraikan bendera baris arahan. Walaupun dokumentasi mencadangkan keupayaan untuk mencipta set bebas untuk melaksanakan subperintah dalam antara muka pengguna, ia masih tidak jelas bagaimana untuk mencapai fungsi ini dalam amalan.
Soalan:
Bagaimana bolehkah kita menentukan FlagSets bebas dalam GoLang untuk menyokong subperintah dalam baris perintah antara muka?
Jawapan:
Membezakan Antara Subperintah
Untuk mencapai FlagSets bebas, perbezaan utama terletak pada mengenal pasti subperintah sebelum menghuraikan bendera. Begini caranya:
1. Cipta FlagSets:
Tentukan beberapa FlagSets, satu untuk setiap subperintah.
f1 := flag.NewFlagSet("f1", flag.ContinueOnError) reset := f2.Bool("reset", false, "")
2. Bezakan Subperintah:
Periksa argumen baris perintah untuk mengenal pasti subperintah aktif. Contohnya, jika awalan perintah ialah "apply", laksanakan FlagSet "f1".
switch os.Args[1] { case "apply": f1.Parse(os.Args[2:]) case "reset": f2.Parse(os.Args[2:]) }
Dengan memisahkan penghuraian FlagSets yang berbeza berdasarkan subperintah, kami boleh mengekalkan set bebas bendera yang digunakan sahaja kepada subperintah masing-masing.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Set Bendera Bebas dalam GoLang untuk Subperintah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!