मैं अपने शुरुआती लोगों के बीच कोड दोहराने से कैसे बच सकता हूं? मैं डेटफॉर्मेटर को स्थिर रहने के लिए चाहता हूं।स्विफ्ट प्रारंभकर्ता में कोड दोहराने से बचें
let dateFormatter: NSDateFormatter
init() {
dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = .MediumStyle
dateFormatter.timeStyle = .MediumStyle
super.init(nibName: nil, bundle: nil)
}
required init?(coder aDecoder: NSCoder) {
dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = .MediumStyle
dateFormatter.timeStyle = .MediumStyle
super.init(coder: aDecoder)
}
override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = .MediumStyle
dateFormatter.timeStyle = .MediumStyle
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
आलसी होने के लिए, आपको यहां आलसी उपसर्ग को जोड़ने की ज़रूरत है? और परिवर्तन करने के लिए var। अन्यथा डेट फॉर्मेटर तर्क लापरवाही नहीं किया जाएगा बल्कि हर बार इसे एक्सेस किया जाता है। –
नहीं, आप दोनों रूपों का उपयोग कर सकते हैं, मैंने अभी इसे एक खेल के मैदान में परीक्षण किया है। – vadian
'नोट आपको हमेशा एक आभासी संपत्ति (चर कीवर्ड के साथ) के रूप में आलसी संपत्ति घोषित करनी चाहिए, क्योंकि इसके प्रारंभिक मान को प्रारंभिक प्रारंभ होने के बाद तक पुनर्प्राप्त नहीं किया जा सकता है। शुरुआती गुणों को प्रारंभिक पूर्ण होने से पहले हमेशा एक मान होना चाहिए, और इसलिए आलसी के रूप में घोषित नहीं किया जा सकता है। [स्रोत] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Properties.html) – Laffen