iOSの---------開発と弱いの違いを割り当てます

弱いと割り当てとの間の差 - 弱の適切な使用は、割り当てます

違い

1.差の可変型変性
弱いだけオブジェクトを変更することができます。変更され、基本的なデータ型の場合、コンパイラは文句を言うだろう- 「『弱い』属性を持つプロパティは、オブジェクトの型でなければなりません」。
割り当ては、オブジェクトと基本データ型を修正することができます。あなたがオブジェクトの種類を変更する必要がある場合には、MRC時代の使用がunsafe_unretained。その名前があるので、もちろん、unsafe_unretainedはまた、野生のポインタを有していてもよい「unsafe_という。」

2との間の差のフィールドガイドか
弱いない野生ポインタの問題。改変放出オブジェクトは(参照カウントが0である)、ポインタが自動的にゼロに設定されるため、メッセージの後に再びオブジェクトが崩壊しない弱いです。弱いは安全です。
割り当てるオブジェクトが変更されている場合は、野生のポインタの問題が生成されます。変更の基本データ型は安全である場合。場合、被験体へのメッセージ解放オブジェクト修飾、ポインタが自動的にクラッシュブランキングされていません。

第二に、同様の

オブジェクトタイプを変更することができるが、割り当て変更されたオブジェクトは、問題となり得ます。

第三に、要約

割り当てるような整数、フロート、構造体の等価タイプなどの基本データ型に適した、参照型のために使用できません。値型はスタックに配置されているため、システムの原理はスタックメモリを管理する責任がある従っ後に進みました。参照型はヒープに配置されます、我々は、手動でメモリを管理したり、ARC管理でする必要があります。
弱いが、循環参照、非常に安全ではない委任し、ブロックや他の参照型、野生のポインタの問題を引き起こさないために適用されます。

 



おすすめ

転載: www.cnblogs.com/KiVen2015/p/11203605.html