هل من الضروري تعيين مؤشرات على لا شيء في الهدف-C بعد الإصدار؟
-
03-07-2019 - |
سؤال
هل هناك أي خطأ في فعل شيء مثل
NSString * string = [ [ NSString alloc ] init ];
...
[ string release ];
أم أن هناك أي قيمة (بخلاف أفضل الممارسات) في الإضافة أيضًا
string = nil;
?
المحلول
ليس من الضروري ، ولكن ممارسة جيدة. إذا كنت ترغب في الرجوع إليها عن غير قصد بعد الإصدار ، فقد تحدث الأشياء السيئة ، ولكن في الهدف C ، لا يوجد أي ضرر في الرجوع إلى شيء.
نصائح أخرى
يعد تعيين متغير مثيل إلى NIL أكثر فائدة في تطبيق متعدد الخيوط من التسلسل المفرد ، لأنه مع وجود عدة مؤشرات ترابط قبل تم إصداره.
عمومًا لا أزعجني في تطبيقات واحدة ، ما لم يكن هناك سبب مقنع آخر.
الهدف-C هو في الحقيقة مثل C مع معالج مسبق يتوهم.
إن تعيين مؤشر إلى NIL في Objective-C ليس له أي تأثير على ما أشار إليه هذا المؤشر مرة واحدة.
لا تنتمي إلى StackOverflow