objective-c - calling one constructor from another -


कहें कि आपके पास निम्न दो कन्स्ट्रक्टर थे:

  - (id) initWithTitle: (NSString *) शीर्षक; - (आईडी) initWithTitle: (NSString *) शीर्षक पृष्ठ: (NSString *) पृष्ठ;  

दूसरा निर्माता पहले से अलग नहीं है, सिवाय इसके कि यह सदस्य चर "पृष्ठ" सेट करता है।

चूंकि यह मूल रूप से एक ही काम करना है, क्या कोड के दोहराव को कम करने के लिए दूसरे से दूसरे को कॉल करने का एक तरीका है, या क्या आपको सामान्य कार्य करने के लिए तीसरी विधि सेट करना है?

मैं इसके जैसा कुछ कर रहा हूं , हालांकि मुझे शक है कि यह काम करेगा:

  - (आईडी) initWithTitle: (NSString *) _ शीर्षक {if (self = [super init]) {self.title = _title; } स्वस्थ वापसी; } - (आईडी) initWithTitle: (NSString *) _ शीर्षक पृष्ठ: (NSString *) _ पृष्ठ {यदि (आत्म = [आत्म initWithTitle: _title]) {self.page = _page; } स्वस्थ वापसी; }  

आप क्या कह रहे हैं अजीब है क्योंकि मैं इस बारे में सोच रहा हूं

  - (आईडी) initWithTitle: (NSString *) _ शीर्षक {वापसी [आत्म initWithTitle: _title पृष्ठ: शून्य]; } - (आईडी) initWithTitle: (NSString *) _ शीर्षक पृष्ठ: (NSString *) _ पृष्ठ {if (self = [super init]) {self.title = _title; Self.page = _page; } स्वस्थ वापसी; }  

क्या यह काम नहीं करता है?


Comments