2010-04-13 18 views
9

उद्देश्य सी में फ़ंक्शन कैसे कॉल करें? उदाहरण के लिए:मैं ऑब्जेक्टिव सी फ़ंक्शन कैसे कॉल करूं?

-(void)abc 

और कार्यान्वयन फ़ाइल में इस समारोह को लागू (मीटर फाइल):

मैं शीर्षक में समारोह (ज फ़ाइल) को परिभाषित

-(void)abc 
{ 
//..... 
///.... 
} 

अब मैं कैसे होगा इस समारोह को कहां से मुझे चाहिए?

उत्तर

2

यह कुछ कक्षाओं पर एक विधि है।

Foo* foo = [[Foo alloc] init]; 
[foo abc]; 
20

एक ही कक्षा के भीतर से इस विधि कॉल करने के लिए आप कहेंगे: वर्ग फू कहा जाता है, तो यह कुछ इस तरह हो सकता है

[self abc]; 

अन्य वर्ग से कॉल करने के लिए, यह सोचते हैं आप उस वर्ग का एक उदाहरण के लिए एक संदर्भ आप कहेंगे:

[instance abc]; 

आप विधि में पैरामीटर हैं, पहले पैरामीटर के लिए आप के रूप में (एक स्ट्रिंग संभालने यह है) यह घोषणा करेंगे:

- (void) abc : (NSString *)param1; 

और के रूप में यह कहते हैं:

[self abc:@"Yoop"]; 

सभी निम्नलिखित मानकों एक नाम दिया जाना चाहिए।

- (void) abc : (NSString *)param1 paramName2:(NSString *)param2; 

इस तरह कहा जा सकता है: उदाहरण के लिए अगर वहाँ दो पैरामीटर आप के रूप में यह घोषणा करेंगे थे

[self abc:@"Yoop" paramName2:@"Woop"]; 

यह थोड़ा के साथ शुरू करने के लिए करने के लिए इस्तेमाल हो रही है ले करता है, लेकिन वहाँ विधि है पागलपन के लिए! उद्देश्य-सी शब्दावली में आप वास्तव में विधि को कॉल नहीं कर रहे हैं, आप एक संदेश पारित कर रहे हैं। यह एक अच्छा ब्लॉग पोस्ट मतभेद का वर्णन किया गया है: Cocoa with Love

मैं इस यहाँ पर चर्चा: What's with the square brackets (calling methods)

1

यह बहुत आसान है बस लिखने

[self function]; 
संबंधित मुद्दे