क्या टाइप-सी का उपयोग किए बिना ऑब्जेक्ट-सी में एक विधि ब्लॉक पैरामीटर निर्दिष्ट करना संभव है? यह फंक्शन पॉइंटर्स की तरह होना चाहिए, लेकिन मैं बिना इंटरमीडिएट टाइप किएडिफ का उपयोग किए बिना जीतने वाले सिंटैक्स पर हिट नहीं कर सकता:
typedef BOOL (^PredicateBlock_t)(int);
- (void) myMethodTakingPredicate:(PredicateBlock_t)predicate
केवल उपरोक्त संकलन, ये सभी विफल:
- (void) myMethodTakingPredicate:( BOOL(^block)(int) ) predicate
- (void) myMethodTakingPredicate:BOOL (^predicate)(int)
और मुझे याद नहीं है कि मैंने और क्या संयोजन किए हैं।
3
goshdarnblocksyntax.com
—
काइल क्लेग