मान लें, उदाहरण के लिए, आप है निम्नलिखित कोड:स्विफ्ट - कन्स्ट्रक्टर पैरामीटर पर लेबल वैकल्पिक बनाओ?
struct SomeStruct {
init (arg1: String, arg2: Int){
// Does Stuff with Variables
}
}
// Some Point Later
var str = "fasfsad"
var integer = 343
let smth = SomeStruct(arg1: str, arg2: integer)
यह संभव कानूनी निम्न कोड पंक्ति बनाने के लिए SomeStruct struct संशोधित करने के लिए है
let smth = SomeStruct(str, integer)
सही है, लेकिन करने के लिए मूल प्रश्न के शब्द पर विभाजित बाल: यह कॉल साइट पर पैरामीटर लेबल * वैकल्पिक * नहीं बनाता है - यह आवश्यक है कि कॉलर उन्हें छोड़ दें। एक फ़ंक्शन/प्रारंभकर्ता घोषणा इसे कॉल करने के लिए बिल्कुल एक वाक्यविन्यास निर्दिष्ट करती है। यदि आप एकाधिक विकल्पों के साथ कॉलर्स प्रदान करना चाहते हैं, तो एकाधिक प्रारंभकर्ता घोषित करें। – rickster
यह एक अच्छा मुद्दा है। यदि प्रारंभकर्ता को इस तरह से परिभाषित किया गया है, 'कुछ संरचना (arg1: str, arg2: integer) 'अब वैध कॉल नहीं है। –