Avatar ·

क्या Swift में इनिशियलाइज़ेशन के दौरान didSet को कॉल करवाना संभव है?

नमस्ते! मैं Swift में नया हूँ और प्रॉपर्टी ऑब्ज़र्वर्स के अप्रत्याशित व्यवहार का सामना किया है। मेरे पास एक stored property वाला class है, जिसके लिए मैंने didSet सेट किया है ताकि मान बदलने पर वैलिडेशन या UI अपडेट कर सकूं। लेकिन मैंने देखा कि जब मैं इनिशियलाइज़र में प्रॉपर्टी का मान सेट करता हूं, तो didSet कॉल नहीं होता। यहाँ एक उदाहरण है:\n\n```swift\nclass Temperature {\n var celsius: Double = 0 {\n didSet {\n print("तापमान बदलकर \\(celsius)°C हो गया")\n // यहाँ मैं UI अपडेट या वैलिडेशन करना चाहता हूं\n }\n }\n \n init(celsius: Double) {\n self.celsius = celsius // didSet कॉल नहीं होता!\n }\n}\n```\n\nजब मैं `let temp = Temperature(celsius: 25)` ऑब्जेक्ट बनाता हूं, तो मुझे कंसोल में "तापमान बदलकर 25.0°C हो गया" दिखने की उम्मीद है, लेकिन ऐसा नहीं होता।