使用相同函式,不同方法,會造成error
error code:
1 2 3 4 5 6 7 8 9 10 11 12 | import UIKit import UIKit class ViewController: UIViewController { func perform(operation: (Double) -> Double) { } func perform(operation: (Double, Double) -> Double) { } } |
complier error:
1 | Method 'performOperation' with Objective-C selector 'performOperation:' conflicts with previous declaration with the same Objective-C selector |
解決函式重載問題
加入@nonobjc即可
1 2 3 4 5 6 7 8 9 10 11 12 13 | import UIKit
import UIKit
class ViewController: UIViewController
{
func perform(operation: (Double) -> Double) {
}
@nonobjc
func perform(operation: (Double, Double) -> Double) {
}
}
|
Using Swift with Cocoa and Objective-C (Swift 2.1)
reference:
沒有留言:
張貼留言