次のコードを持つ関数の場合があります。
func halfMatch(text1, text2 string) []string {
...
if (condition) {
return nil // That's the final code path)
}
...
}
[]string(nil)
nilの代わりに戻っています。最初はnil
、特定の戻り型を持つ関数で返すと、その型のゼロ値のインスタンスが返されるだけだと思いました。しかし、それから私は簡単なテストを試みました、そしてそれはそうではありません。
なぜnil
空の文字列スライスを返すのか誰かが知っていますか?