【发布时间】:2018-05-08 16:46:25
【问题描述】:
我想知道两个对象是否具有相同的类型。我试过了
if TypeOf X = TypeOf Y
和
if TypeOf X is TypeOf Y
但这些都不是有效的 VB
有没有办法在一行中做到这一点,还是我只需要为每种可能的类型编写代码?
if (TypeOf X is Type1 AndAlso TypeOf Y is Type1)
OrElse (TypeOf X is Type2 AndAlso TypeOf Y is Type2)
...
【问题讨论】:
-
x.GetType() = y.GetType()。或 x.GetType().IsAssignableFrom(y.GetType())。或 TryCast(x, y.GetType())。如果您不告诉我们您为什么需要这个,就很难猜出您真正想要什么。
-
在我看来,这不是重复的,因为另一个问题是如何检查一个对象是否属于特定的已知类型,而不是检查两个不同的对象是否属于同一类型。相似且有帮助,但并不完全相同。