गुण:/ बनाए रखने आवंटितमजबूत/कमजोर/बनाए रखने/unsafe_unretained/संपत्ति synthesizing के लिए आवंटित
- बनाए रखने - यह, को बनाए रखा है पुराने मूल्य जारी की है और उसके असाइन
- असाइन - यह IOS5 = मजबूत/कमजोर: केवल स्वामित्व के लिए असाइन किया गया है
गुण 0 IOS4 = बनाए रखने/unsafe_unretained
मजबूत (iOS4 = बनाए रखने) - स्वामी i'am, तो आप इस उद्देश्य ठीक से पहले उस के साथ dealloc नहीं कर सकते हैं = बनाए रखने
कमजोर (iOS4 = unsafe_unretained) - एक ही बात के रूप में असाइन, कोई को कायम रखने में जारी
तो unsafe_unretained == आवंटित?
@property (nonatomic, assign) NSArray * tmp;
के बराबर है?
@property (nonatomic, unsafe_unretained) NSArray * tmp;
और इसके विपरीत?
यदि हां, तो आईओएस 4 में कब पसंद किया जाए, या क्यों (unsafe_unretained) असाइन किया गया है?
और आईओएस 4 में एक प्रतिनिधि असुरक्षित या असाइन किया जाना चाहिए?
इसलिए आईओएस 4 असाइन == unsafe_unretained में, लेकिन आईओएस 5 असाइन करें! = कमजोर, इसलिए unsafe_unretained जहां कमजोर होना चाहिए? दाएं –
और एक प्रतिनिधि को असुरक्षित या असाइन किया जाना चाहिए? –
एक प्रतिनिधि को कमजोर असाइनमेंट होना चाहिए। लेकिन चूंकि कमजोर आईओएस 4 पर उपलब्ध नहीं है, इसलिए आपको unsafe_unretained का उपयोग करना चाहिए। मुझे किसी भी प्रकार के लिए 'असाइन' का उपयोग करने का कोई कारण नहीं दिख रहा है जो कि आदिम प्रकार (एनएसआईएनटेगर, फ्लोट, ...) नहीं है। मैन्युअल मेमोरी प्रबंधन में हमने असाइन किया था क्योंकि कुछ भी बेहतर नहीं था। लेकिन कमजोर बहुत बेहतर है क्योंकि जब ऑब्जेक्ट को हटा दिया जाता है तो यह परिवर्तनीय को शून्य पर सेट करता है। –