Xcode では ARC の使用が推奨されていることは認識していますが、少なくとも__weak
. を作成すると、ストレージ タイプとして弱いか強いIBOutlet
かを選択できますが、これはアプリケーションが iOS 5 以降に限定されているということですか、それとも古い iOS でも動作するのでしょうか?
3 に答える
間違いなくARCを使用してください。ご指摘のとおり、iOS 4.3 との互換性を提供することを選択した場合、割り当てが解除されたときにweak
変数が自動的にnil
-ed されるという変数の小さな利点を享受できません (ただし、それはありません)。非ARCコードの機能なので、何かを失うわけではありません)。そして、はい、controlInterface Builder から .h ファイルに ドラッグすると、strong
とweak
オプションしかないと表示されますが、少なくとも最新の Xcode では、iOS 4.3 をターゲットとして を選択するweak
と、自動的にとして作成する__unsafe_unretained
ので、すべて問題ありません。
要するに、iOS 4.3 のサポートを目標としている場合でも、ARC を使用すると、ARC を使用しなかった場合よりもコーディングの寿命が大幅に長くなります。iOS 4.3 でも、ARC の素晴らしいメリットがたくさんあります。また、iOS 5.0 をターゲット展開として使用する場合は、ARC の利点を最大限に活用できます。
Xcode 4.5 を使用すると、確かに、iPhone 3G 以前のプロセッサである armv6 のサポートが失われるため、アプリは iPhone 3GS 以降のみをサポートします。
いいえ、ARC は単なるコンパイラ機能です。これはファイルごとであるため、既存のコードにはまったく影響しません。
iOS バージョンのサポートは、Xcode のバージョンによって異なります。
Xcode (4.5) の最新バージョンでは、iOS 4.3 以降用のアプリを作成できます。以前のバージョンの iOS (4.3 より前) 用のアプリを作成する必要がある場合は、Xcode 4.4.1 をインストールする必要があります。