
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
[Go]なぜsliceの空チェックで「nil」ではなく「長さ」でチェックするのか - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
[Go]なぜsliceの空チェックで「nil」ではなく「長さ」でチェックするのか - Qiita
さて、なぜsliceの空チェックで「nil」ではなく「長さ」でチェックするのか、体で覚えているだけできち... さて、なぜsliceの空チェックで「nil」ではなく「長さ」でチェックするのか、体で覚えているだけできちんと理解していなかったので、まとめてみます。 2. sliceを「長さ」でチェックする理由 理由は、sliceが空になり、nilにならない場合が発生する可能性があるため、「長さ」でチェックしないと漏れが発生するためです。 ポイントは、 ・sliceを空で宣言しても宣言の仕方によってnil sliceかempty sliceになる ・nil sliceとempty sliceともにlenとcapが0 ということです 2-1. 空で宣言しても宣言の仕方によってnil sliceかempty sliceになる 空で宣言しても、宣言の仕方によってはnil sliceかempty sliceと違いが出てきてしまい、nilチェックでは以下のパターンでチェックが漏れてしまいます。 func main(