,,,,,,,, . net中的类型有5中:类、结构,枚举,接口和委托。而类和结构有着很大的相似性,都可以拥有向字段,方法这样的成员。
,,,,,,,,但是,类和结构还是有很多不同的。
,,,,,,,, 1)结构是值类型,而类确是引用类型的。
,,,,,,,, 2)结构不支持继承。
,,,,,,,, 3)因为结构是值类型的,所以两个变量不能指向同一结构实例。
,,,,,,,, 4)引用类型可以为空(null),但却不能给值类型赋值为空,会导致编译出错
,,,,,,,,,,,,,,,,,,,,例如System.DataTime是一个结构,以下是错误的
,,,,,,,,,,,,,,,,,,,,系统。今天dataTime=零;,,,,//错误的
,,,,,,,,,,,,,,为了规避这个问题。净框架提供了System.Nunllable结构来使任意结构可以为空,,,,,,,,,,,,,,,,简单的写法为:,,System.dataTime吗?今天=零;
,,,,,,,,,,,,,,,,,,,,,,,,,,int ?x=零,,//x是nullable
c#中所有的基本类型,都是在系统命名空间中所定义的结构的别名,例如int和字符,我们每在c#中声明一个int,就会创建一个System.Int32实例,每一个字符,就会有一个System.Char实例支持它。值类型继承自System.ValueType,引用类型继承自系统。对象。
还有一个小问题我之前没听过,就是程序集的概念
,,,,,,,,【我们可以在System.Numerics.dll程序集中找到System.Numerics命名空间,要使用其成员,我们需要现在项目中增加对这个程序集的引用】,,项目→添加参考选中想引用组件类型的标签页