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