-4

私はSwiftプログラミング言語が初めてです。Appleのサイトから学んでいます。以下のコード行に出くわしました:

let emptyArray = [String]()

これに関連する別の質問をしましたが、完全ではありません。Swift で空の不変配列を作成することの長所と短所を知りたいです。上記のコード行には let キーワードが含まれているため、文字列型の空の配列がメモリ内に作成されることが明確に示されています。私の興味のある点は、なぜ誰かがそれを必要とするのでしょうか? 使い道はありますか?そうでなければ、Apple はそれを許可しなかったでしょう。そのため、例の長所と短所を知りたいです。

注: Google と StackOverflow でクエリを検索しましたが、探している正確な理由が見つかりませんでした。したがって、この質問に反対票を投じる前によく考えてください。

編集:以前に尋ねられた質問は、現在の質問にまったく対応していません。この質問により、どのシナリオでそれを行うべきかを知りたいです。Apple が空の不変配列を作成できるような機能を提供する理由。空の配列には値がなく、作成後はその値を空として編集することはできず、項目を追加したり削除したりすることもできません。では、なぜコンパイルはそのような行を書くことを許可するのでしょうか? 私が今はっきりしていることを願っています。

4

1 に答える 1

1

私の興味のある点は、なぜ誰かがそれを必要とするのでしょうか?

誰も必要としていないのかもしれません。Swift で実行できるからといって、誰かがそれを使用したり、便利だと思ったりするわけではありません。

それを使用することはありますか?

不自然な例を思いつくことができると思いますが、必要な場合は使用してください。役に立たないと思う場合は、使用しないでください。

そうでなければ、Appleはそれを許可しなかったでしょう

私はあなたがこれ以上にこれを読んでいると思います。Apple は、Swift で記述できるすべての可能なコード行を考慮してから、それを許可または禁止するわけではありません。これができるという事実は、作成時に変数を初期化できるという事実の自然な拡張です。で宣言するとvarミュータブルになり、で宣言するとletイミュータブルになります。不変の空の配列の作成をAppleが禁止する理由は何ですか? 使い道が思いつかないから?それは、その用途を思いついたプログラマーを本当に苛立たせるでしょう。

于 2015-06-02T12:37:01.157 に答える