Avatar ·

Swift प्रोटोकॉल में वैकल्पिक (ऑप्शनल) विधियाँ कैसे घोषित करें?

सभी को नमस्कार! मैं Swift में नया हूँ और प्रोटोकॉल को समझने की कोशिश कर रहा हूँ। मेरे पास एक प्रोटोकॉल `MyDelegate` है जिसमें कई विधियाँ हैं। मैं चाहता हूँ कि इनमें से कुछ विधियाँ कार्यान्वयन के लिए वैकल्पिक हों—अर्थात, प्रोटोकॉल को अपनाने वाला class उन्हें कार्यान्वित न करे यदि उनकी आवश्यकता न हो। Objective-C में मैंने बस `@optional` का उपयोग किया, लेकिन Swift में यह काम नहीं करता। उदाहरण के लिए, मेरे पास यह कोड है: ```swift protocol MyDelegate { func didStartTask() func didFinishTask() func didFailWithError(error: Error) // मैं इस विधि को वैकल्पिक बनाना चाहता हूँ } ``` जब मैं विधि से पहले `@optional` लिखने का प्रयास करता हूँ, तो कंपाइलर त्रुटि देता है: "Optional requirements are only supported in @objc protocols"। मैं `@objc` का उपयोग नहीं करना चाहता क्योंकि मेरा class NSObject से विरासत में नहीं आता। Swift प्रोटोकॉल में Objective-C runtime से बंधे बिना वैकल्पिक विधियाँ कैसे घोषित करें? क्या Swift में विधि को वैकल्पिक बनाने का कोई तरीका है? या क्या extension का उपयोग करना आवश्यक है?