Avatar ·

在Swift 4模式下使用@objc推断是否已弃用?如何修复?

大家好!我将项目从Xcode 8(Swift 3)升级到了Xcode 9 beta(Swift 4)。打开项目后,Xcode立即显示了一堆警告:“在Swift 4模式下使用Swift 3 @objc推断已弃用。请处理此警告...”我很困惑,因为在Swift 3中,我只需编写一个方法或属性,它就会自动对Objective-C可用。例如,我有这样的代码: ```swift class MyClass: NSObject { var name: String = "" func doSomething() { print("Doing something") } } ``` 在Swift 3中,这段代码运行无误,我可以从Objective-C调用`doSomething()`。现在Xcode 9报错了。我需要重写整个项目吗?什么是@objc推断,为什么它的使用被弃用了?如何正确修复这个问题,同时不失去与Objective-C的兼容性?希望能得到带示例的详细解释。 <<>>

什么是@objc推断以及它为何被弃用?

在Sw