這裏是一個我做的:如何在System.Type變量中使用「is」運算符?
object ReturnMatch(System.Type type)
{
foreach(object obj in myObjects)
{
if (obj == type)
{
return obj;
}
}
}
但是,如果obj是type
一個子類,它不會匹配。但是我希望函數返回的方式與我使用的運算符is
相同。
我嘗試以下,但它不會編譯:
if (obj is type) // won't compile in C# 2.0
我想出了最好的解決辦法是:
if (obj.GetType().Equals(type) || obj.GetType().IsSubclassOf(type))
是不是有使用運營商is
的方式使代碼更清潔?
如果我不能使用運算符'是'這將是最好的解決方案... – Jonas 2008-09-16 14:14:41