काफी बहुत से लोगों को एक मैक्रो जैसेक्या हमें वास्तव में एक सुरक्षित रिलीज मैक्रो की आवश्यकता है?
#define SAFE_RELEASE(X) [X release]; X = nil;
(अपने आप को शामिल) उपयोग करने के लिए लग रहे हैं।
मैं पुन: मूल्यांकन कर रहा हूं कि मैं इसका उपयोग क्यों कर रहा हूं और कुछ राय कैनवास करना चाहता हूं।
उद्देश्य (मुझे लगता है कि) इस मैक्रो का उपयोग के लिए है, इसलिए है कि अगर आप के लिए गए थे गलती से इसे जारी करने के बाद अपने ऑब्जेक्ट का उपयोग तो आप क्योंकि उद्देश्य-सी काफी खुशी से इसे अनदेखा जाएगा जब एक बुरा पहुँच अपवाद नहीं मिलेगा वस्तु शून्य है।
यह मुझे मारता है कि इसमें कुछ अस्पष्ट बग मास्क करने की क्षमता है। जब आप एक्स का फिर से उपयोग करने का प्रयास करते हैं तो शायद यह प्रोग्राम को क्रैश होने के लिए बेहतर होगा। इस तरह परीक्षण के दौरान आप समस्या पा सकते हैं और कोड में सुधार कर सकते हैं।
क्या यह मैक्रो आलसी प्रोग्रामिंग को प्रोत्साहित करता है?
विचार?
RELEASE_AND_NIL सवाल है कि यहाँ से पूछा नहीं किया जाना चाहिए के लिए में [FAQ] प्रासंगिक अनुभाग (http://stackoverflow.com/faq) नाम अधिक स्पष्ट होने के लिए। - 'हल करने की कोई वास्तविक समस्या नहीं है: "अगर मैं अन्य लोगों को ऐसा महसूस करता हूं तो मुझे उत्सुकता है।" – Abizern
पर्याप्त मेला है, लेकिन यह एक समस्या है जिसका सामना कर रहा हूं। समस्या यह है कि मैं इस मैक्रो का उपयोग जारी रखना चाहिए? क्या इसका उपयोग करने का कोई अच्छा कारण है मुझे पता नहीं है? – Ian1971