C#中bool与Boolean有什么区别?string和String区别?

C#中bool与Boolean有什么区别?string和String区别?
1. bool是基本值类型,Boolean 是对象. 
2. bool是Boolean的别名.bool是C#中的,Boolean是.net Framework中的。

bool是内置 C# 类型的关键字,这些类型是 System 命名空间中的预定义类型的别名。

  Boolean是类,bool是它的别名。


 用Reflector反汇编了下mscorlib.dll,得到Boolean的源代码,看到了下面的内容: 
 
 public struct Boolean : IComparable, IConvertible, IComparable<bool>, IEquatable<bool> 
     { 
        private bool m_value; 
         //省略其他成员的定义..... 
      } 
 
 MSDN中解释bool与Boolean的关系是:“bool 关键字是 System.Boolean 的别名”.实际使用无任何差别。它们的成员也是一样的。 
 最后总结:bool就像你的乳名,你爹妈以及你们内部所属成员都认识,Boolean就像你的学名。大家都认识。不过不管按照学名还是乳名称呼你,最终的目的是一样的,还是你这个人。  
 http://msdn.microsoft.com/zh-cn/library/ya5y69ds(v=vs.100).aspx

3.bool这个乳名更通用!!

bool是C#,那么只要是C#语言就都能识别.bool,而Boolean是.net Framework中的,那么就和net Framework的版本相关了,所以应该尽量使用bool,无论在哪个net Framework的版本下都能用


 对于String和string的关系也是如此。 

posted on 2013-01-11 13:51  荣京  阅读(781)  评论(0编辑  收藏  举报