Avatar ·

Swift 4 में अंतर्निहित @objc को अप्रचलित क्यों किया गया और इसे कैसे ठीक करें?

सभी को नमस्कार! मैंने हाल ही में अपने प्रोजेक्ट को Swift 3 से Swift 4 (Xcode 9 beta का उपयोग करते हुए) में अपडेट किया और मुझे ढेर सारी चेतावनियाँ मिलीं। कंपाइलर कुछ इस तरह लिखता है: «Swift 4 मोड में Swift 3 @objc inference का उपयोग अप्रचलित है। कृपया अप्रचलित @objc inference को कम करें...» पहले मैं Swift 3 में कोड लिखता था, और मेरे पास बटनों के लिए selectors, target-action, और वे methods जो Objective-C से कॉल होते थे, काम करते थे। उदाहरण के लिए, यह सरल कोड बिना किसी समस्या के काम करता था: ```swift class MyViewController: UIViewController { @IBOutlet weak var myButton: UIButton! override func viewDidLoad() { super.viewDidLoad() myButton.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside) } func buttonTapped() { print("Button tapped") } } ``` Swift 4 में अपडेट करने के बाद, मुझे `#selector(buttonTapped)` वाली लाइन पर चेतावनी मिलती है। मैं समझता हूँ कि यह `@objc` inference के नए नियमों से संबंधित है, लेकिन पूरी तरह से समझ नहीं पाया हूँ। क्यों