C#Cast Exception

Jak*_*tad 6 c# performance exception

偶然发现了一些旧的代码,它们抛出并清空了一些强制转换异常(每次约20次:()

如果由于这个原因,性能受到影响该怎么办?我应该担心这个,还是只是在try/catch中的开销

令人惊讶的是,缺少有关C#异常性能主题的信息.

谢谢,真的,来自你的.

GWL*_*osa 9

例外情况会比大多数平均代码行减慢速度.而不是强制转换然后捕获异常,而是进行检查.例如

myType foo = (myType)obj;
foo.ExecuteOperation();
Run Code Online (Sandbox Code Playgroud)

myType foo = obj as myType;
if (foo != null)
{
     foo.ExecuteOperation();
}
Run Code Online (Sandbox Code Playgroud)