में ऑटोरेलीज बनाम रिलीज मुझे पता है कि आईओएस में मेमोरी मैनेजमेंट मेरे जैसे नए लोगों के लिए मुश्किल है, लेकिन मैं यहां स्टैक ओवरफ्लो पर एक स्पष्ट स्पष्टीकरण की उम्मीद कर रहा था जिसे मैं कहीं और नहीं मिला।dealloc
तो, नाटक मैं एक संपत्ति/इवर
@property(nonatomic, retain) UIPopoverController *popOver;
जो मैं इस तरह का आवंटन कर रहा हूँ है: मेरे dealloc और viewDidUnload तरीकों में अब
self.popOver = [[[UIPopoverController alloc] initWithContentViewController:popOverContent] autorelease];
,, मैं दोनों
करना// in viewDidUnload:
self.popOver = nil;
// in dealloc:
[popOver release];
प्रश्न:
- यदि मैं देखने में शून्य/रिलीज करता हूं DidUnload/dealloc, क्या मुझे वास्तव में आवंटन पर autorelease करने की आवश्यकता है?
- इसके विपरीत, अगर मैं आवंटन पर ऑटोरेलीज करता हूं, तो क्या मुझे बाद में शून्य/रिलीज करने की आवश्यकता है?
- क्या अंतर है, यदि कोई है?
अपने समय के लिए अग्रिम धन्यवाद - मुझे पढ़ने जारी रखेंगे, गंभीरता से स्मृति प्रबंधन नहीं किया जा सकता चारों ओर अपने सिर कि हार्ड रैप करने के लिए ...
शीर्षक संपादित करने के लिए धन्यवाद; मैंने इसी तरह के प्रश्न देखे जिनके सामने "आईओएस:" था; वास्तव में इसके बिना शुरू किया। – pille