Swift 2.0泛型类型子类cast
有一个具有泛型类型的基类:Swift 2.0泛型类型子类cast,swift,generics,swift2,Swift,Generics,Swift2,有一个具有泛型类型的基类: class A<T: AnyObject> {} 问题是:为什么 b is A // return false b is A<AnyObject> // return false b是一个//返回false b是一个//返回值false 您确定b是A返回false?它无法在我的测试项目中编译。b是A的类型,而不是AA和A,或者是类似的问题,并有解释你是出于好奇还是想实现什么?正如@MartinR所说,b是一个不可编
class A<T: AnyObject> {}
问题是:为什么
b is A // return false
b is A<AnyObject> // return false
b是一个//返回false
b是一个//返回值false
您确定b是A
返回false
?它无法在我的测试项目中编译。b是A
的类型,而不是A
A
和A,或者是类似的问题,并有解释你是出于好奇还是想实现什么?正如@MartinR所说,b是一个不可编译的
,主要是因为你需要提供一个类型。如果您这样做,例如,b是A
您会得到正确的答案:true
。正如@ozgur所说,你不应该对b是A
而false
感到惊讶-它不是同一种类型。是的,“b是A”有一个编译错误。。。。。
var b = B()
b is A // return false
b is A<AnyObject> // return false