与えられた
class MyClass {
static let Anything = 1
func wasCalled<T:AnyObject where T:Equatable>(values: [T]) { }
}
なぜこれがコンパイルされるのですか:
MyClass().wasCalled([1, "a string"])
しかし、これにより、「タイプ '(NSArray)' の引数リストで 'wasCalled' を呼び出すことはできません」が生成されます。
MyClass().wasCalled([MyClass.Anything, "a string"])
同様に
let n = 2
MyClass().wasCalled([n, "a string"])
使用: Xcode 7 ベータ 6、Swift 2