मुझे समझ में नहीं आता है कि हमें विधि NSInvocation
ऑब्जेक्ट्स पर क्यों कॉल करना है जब वह जानकारी invocationWithMethodSignature
के माध्यम से पहले ही पार हो गई है।NSInvocation क्लास पर setSelector विधि का उद्देश्य क्या है?
SEL someSelector;
NSMethodSignature *signature;
NSInvocation *invocation;
someSelector = @selector(sayHelloWithString:);
//Here we use the selector to create the signature
signature = [SomeObject instanceMethodSignatureForSelector:someSelector];
invocation = [NSInvocation invocationWithMethodSignature:signature];
//Here, we again set the same selector
[invocation setSelector:someSelector];
[invocation setTarget:someObjectInstance];
[invocation setArgument:@"Loving C" atIndex:2];
सूचना है कि हम [invocation setSelector:someSelector];
के लिए फिर से [SomeObject instanceMethodSignatureForSelector: someSelector];
को चयनकर्ता पारित कर दिया और:
एक NSInvocation
वस्तु हम निम्न कार्य बनाने के लिए।
क्या मुझे कुछ याद आ रही है?
+1 - यहां एक प्रश्न देखने के लिए अच्छा है जिसे पहले से दस लाख बार नहीं पूछा गया है (और उत्तर दिया गया है), और अविश्वसनीय तत्काल संदेश शब्दकोष में लिखा नहीं गया है। :-) –
एक छोटा सा बिंदु: 'हस्ताक्षर = [कुछ ऑब्जेक्ट इंस्टेंस मोडस हस्ताक्षरफॉर चयनकर्ता: कुछ चयनकर्ता]; 'या तो' हस्ताक्षर = [[कुछ ऑब्जेक्ट क्लास] उदाहरण होना चाहिए विधि हस्ताक्षरफोर चयनकर्ता: कुछ चयनकर्ता]; या हस्ताक्षर = [कुछ ऑब्जेक्ट विधि सिग्नेचरफॉर चयनकर्ता: कुछ चयनकर्ता]; ' – Brynjar