2012-02-28 12 views
8

मैं Xcode 4.3 में एक वर्ग बनाया है, और यह @interface और सही स्थानों में @implementation साथ शीर्षक और कार्यान्वयन फ़ाइलें बनाई, लेकिन वहां भी इस तरह कार्यान्वयन फ़ाइल में एक @interface है:क्यों एक्सकोड 4.3 कार्यान्वयन फ़ाइल में @interface ClassName() डालता है?

@interface MyClassName() 

@end 

एक्सकोड ने कार्यान्वयन फ़ाइल में क्यों रखा और इसके लिए क्या है?

धन्यवाद, Kurz

उत्तर

13

Xcode स्वचालित रूप से एक वर्ग विस्तार है, जो आप "निजी" तरीकों को लागू करने के लिए अनुमति देता है बनाता है।
कक्षा विस्तार अज्ञात श्रेणियां हैं और उद्देश्य-सी 2.0 के साथ पेश किए गए हैं।

कक्षा एक्सटेंशन का एक लाभ यह है कि संकलक आपको चेतावनी देगा, अगर आप अज्ञात इंटरफ़ेस में घोषित विधियों में से किसी एक को लागू करना भूल जाते हैं।

+0

शानदार! धन्यवाद! – kurzweil4

+0

एक और जवाब यह है: क्योंकि हमने ऐप्पल से इसे जोड़ने के लिए आग्रह किया ....: डी हम में से कई ने "आखिरकार चिल्लाया"! –

+0

पढ़ें [bbum] [वर्ग एक्सटेंशन] के बारे में क्या कहना है (http://www.friday.com/bbum/2009/09/11/class-extensions-explained/)। – Caleb

संबंधित मुद्दे