2014-06-05 16 views
41

के भीतर उपयोग किया जाता है जब मैं किसी इकाई का उदाहरण प्रारंभ कर रहा हूं तो मुझे त्रुटि Variable used within its own initial value मिल रही है।स्विफ्ट त्रुटि: परिवर्तनीय अपने प्रारंभिक मान

class func buildWordDefinition (word:String, language:Language, root:TBXMLElement) -> WordDefinition 
    { 
     let word = WordDefinition(word: word, language: language) 

word चर में त्रुटि अंक:

यहाँ कोड त्रुटि फेंक है।

class WordDefinition { 
    let word: String 
    let language: Language 

    init(word: String, language:Language) 
    { 
     self.word = word 
     self.language = language 
    } 
} 

इस त्रुटि का क्या मतलब है:

यहाँ WordDefinition वर्ग है?

+1

शायद तुम वस्तु 'word' फोन नहीं करनी चाहिए? – meda

उत्तर

48

आप निरंतर नाम word घोषित कर रहे हैं, और इसे प्रारंभ करने के लिए उसी नाम के साथ तर्क का उपयोग करने का प्रयास कर रहे हैं। संकलक तर्क का उपयोग करने के बजाय, अपने प्रारंभिक मूल्य को आवंटित करने के लिए केवल घोषित निरंतर उपयोग करने का प्रयास करता है।

4

आपके पास स्कोप में word नामक फ़ंक्शन पैरामीटर है और आप उसी नाम के साथ स्थिर बनाने की कोशिश कर रहे हैं। word के अलावा अपने स्थिर कुछ को नाम दें।

8

आप अपने समारोह

class func buildWordDefinition (word:String, language:Language, root:TBXMLElement) -> WordDefinition 
{ 
    // same name as the parameter here 
    let word = WordDefinition(word: word, language: language) 
9

I have faced same error when missing out if while unwrapping the text .

enter image description here

भीतर एक निरंतर word जो एक पैरामीटर के रूप में एक ही नाम है को पुनर्परिभाषित कर रहे हैं कि क्या समस्या हल हो गई इसके बाद के संस्करण को जोड़ कर।

enter image description here

+3

धन्यवाद, वही बेवकूफ गलती थी और इसे नहीं देख सका: पी –

संबंधित मुद्दे