Objective-C: what is private what is not? -


लोग प्रयोग क्यों कर रहे हैं

  @interface ViewController: UIViewController {@private UIButton * button_; }  

सार्वजनिक हेडर में निजी घोषणाएं? एक कार्यान्वयन के भीतर एक चर को घोषित करते हुए एक ही परिणाम पैदा होता है, है ना? यह मेरे लिए अजीब लगता है, मैंने सोचा था कि सार्वजनिक शीर्ष लेख में केवल वास्तव में सार्वजनिक सदस्य ही शामिल होना चाहिए। संरक्षित सदस्यों के साथ क्या करना है?

  @implementation ViewController UIButton * button_; @end  

फर्क सिर्फ इतना है कि यह चर केवल वर्तमान संकलन इकाई (.m फ़ाइल, सही?) के भीतर दिखाई देता है

क्या ऐसा ही है तरीकों के लिए सही पकड़? मैं उचित तरीके से आदेश या आगे घोषणाओं के साथ ठीक संकलन कर सकता था लोगों को निजी तरीकों के लिए श्रेणियां घोषित करने की क्यों परवाह है? केवल परीक्षण प्रयोजनों के लिए? @implementation ब्लॉक के भीतर परिवर्तनीय घोषणा एक वैश्विक चर पैदा करेगा, और नहीं एक उदाहरण चर उदाहरण चर को @interface के भाग के रूप में परिभाषित करने की आवश्यकता होती है।

जब आप कोई अतिरिक्त @interface ब्लॉक बना सकते हैं, तो एक श्रेणी के माध्यम से या विस्तार, लेकिन इसमें केवल विधि घोषणाएं हो सकती हैं, और नहीं उदाहरण चर।


Comments

Popular posts from this blog

ios - Form Sheet content disappearing -

MySql variables and php -

c++ - an enclosing-function local variable cannot be referenced in a lambda body unless if it is in capture list -