Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2313803
  • 博文数量: 527
  • 博客积分: 10343
  • 博客等级: 上将
  • 技术积分: 5565
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-26 23:05
文章分类

全部博文(527)

文章存档

2014年(4)

2012年(13)

2011年(19)

2010年(91)

2009年(136)

2008年(142)

2007年(80)

2006年(29)

2005年(13)

我的朋友

分类: 嵌入式

2012-03-15 18:34:01

string s1 = null;
string s2 = null;
Console.WriteLine( s1+ s2+ @"\"  );

 

以上代码不会抛出异常, 这个行为很符合直觉, 这个行为重要在处理异常的代码中, 可以大大减少不必要的簿记代码

try

{...

}

catch(Exception ex)

{

   Logger.Log(  someVariableMaybeNull + ex );

}

本来就是catch all代码段, 程序员的这个代码块里往往会放松警惕, 在这个代码块里尤其是防止再次抛出异常, 这样的异常往往不是编程者所期望的. 很可能需要在这里收集足够的信息以供调试时定位问题, string对象的+操作符对null对象的处理方式大大减少了判断一些string变量是否为空的必要

阅读(1664) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~