一尘不染

检查实例是否为类型

c#

使用它来检查是否c是的实例TForm

c.GetType().Name.CompareTo("TForm") == 0

除了使用a string作为参数之外,还有其他更安全的方法CompareTo()吗?


阅读 216

收藏
2020-05-19

共1个答案

一尘不染

这里的不同答案有两种不同的含义。

如果要检查实例 的类型 是否 正确,

if (c.GetType() == typeof(TForm))

是要走的路。

如果您想知道c是的实例TForm 还是子类,请 使用is/ as

if (c is TForm)

要么

TForm form = c as TForm;
if (form != null)

在您的脑海中,您需要明确要真正了解哪些行为。

2020-05-19