哪一段代码更快?
if (obj is ClassA) {}
if (obj.GetType() == typeof(ClassA)) {}
编辑: 我知道他们不做同样的事情。
最佳答案
如果他们不做同样的事情,哪个更快有关系吗?比较具有不同含义的语句的性能似乎不是一个好主意。
is
告诉您对象是否在其类型层次结构中的任何位置实现了 ClassA
。 GetType()
告诉您派生最多的类型。
不是一回事。
关于c# - is 和 typeof 哪个更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/184681/