如果对象是SomeType而对象是SomeType

时间:2011-05-18 10:45:09

标签: c# object

  

可能重复:
  Direct casting vs 'as' operator?
  casting vs using the 'as' keyword in the CLR

我知道我可以做到以下几点:

if(someObject is Bar)
{
    Bar b = (Bar)someObject;
    //Use b
}

还有:

Bar b = someObject as Bar;
if(b != null)
{
    //Use b
}

如果我假设我只想在另一个变量中引用someObject,那么一个优于另一个吗?

编辑:首选,我的意思是遵循惯例,性能,错误机会和可读性。

1 个答案:

答案 0 :(得分:1)

第一个版本有两个支票,而第二个版本只有一个支票 - >第二个是可取的。