最後の引数がオプションである関数がある場合、引数をオプションにするために使用するのは適切な方法...
ですか、それとも悪い形式と見なされますか?
例:
func Foo(s ...string) {
switch len(s) {
case 0:
fmt.Println("You didn't pass an argument")
case 1:
fallthrough
default:
fmt.Printf("You passed %s\n", s[0])
}
}
Foo("bar") // "You passed bar"
Foo() // "You didn't pass an argument"
Foo("bar", "baz") // "You passed bar"
この例では、渡された引数が多すぎてもかまいませんが、default:
必要に応じてそれを処理できます。