मैं निम्नलिखित कोड है:ऑब्जेक्टिव-सी #import पाश
#import <Foundation/Foundation.h>
#import "ServerRequest.h" // works even though this line is included
#import "ServerResponseRecord.h"
@protocol ServerRequestDelegate<NSObject>
-(void)request:(id)request gotResponseRecord:(ServerResponseRecord*)response;
-(void)request:(id)request gotError:(NSError*)error;
@end
यह कम्पाइल और ठीक चलाता है। हालांकि, अगर मैं के साथ विधि घोषणाओं की जगह:
-(void)request:(ServerRequest*)request gotResponseRecord:(ServerResponseRecord*)response;
-(void)request:(ServerRequest*)request gotError:(NSError*)error;
मैं अप्रत्याशित सिंटैक्स त्रुटि ": उम्मीद ')' 'ServerRequest' से पहले त्रुटि" मिलता है। एकमात्र कारण यह है कि मैं यह सोच सकता हूं कि एक समस्या हो सकती है कि ServerRequestDelegate.h और ServerRequest.h # एक दूसरे को आयात करें। हालांकि, मुझे समझ में नहीं आता कि कोड # आईडीपोर्ट अनुरोध (आईडी) अनुरोध के साथ क्यों काम करता है। मुझे यह भी समझ में नहीं आता कि यह वाक्यविन्यास त्रुटि क्यों है।
क्या कोई अच्छी व्याख्या प्रदान कर सकता है?
http://stackoverflow.com/questions/10019961/objective-c-class-directive-before-interface में आयात लूप का एक स्पष्ट उदाहरण है और '@ class' का उपयोग करके इसे कैसे टालना है। – bbum