.NET中结构与类的区别

        .NET中的类型有5中:类、结构、枚举、接口和委托。而类和结构有着很大的相似性,都可以拥有向字段、方法这样的成员。

创新互联专注于鹰手营子网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供鹰手营子营销型网站建设,鹰手营子网站制作、鹰手营子网页设计、鹰手营子网站官网定制、重庆小程序开发服务,打造鹰手营子网络公司原创品牌,更为您提供鹰手营子网站排名全网营销落地服务。

        但是,类和结构还是有很多不同的。

        1)结构是 值类型,而类确是引用类型的。

        2)结构不支持继承。

        3)因为结构是 值类型的,所以两个变量不能指向同一结构实例。

        4)引用类型可以为空(null),但却不能给值类型赋值为空,会导致编译出错

                    例如 System.DataTime是一个结构,以下是错误的

                    System.dataTime today = null;     //Wrong

               为了规避这个问题,.NET Framework提供了System.Nunllable结构来使任意结构可以为空,               简单的写法为:   System.dataTime? today = null;

                           int? x = null;  //x是nullable

C#中所有的基本类型,都是在System命名空间中所定义的结构的别名。例如 int和char,我们每在C#中声明一个int,就会创建一个System.Int32实例,每一个char,就会有一个System.Char实例支持它。值类型继承自System.ValueType,引用类型继承自System.Object。

还有一个小问题我之前没听过,就是程序集的概念

        【我们可以在System.Numerics.dll程序集中找到System.Numerics命名空间,要使用其成员,我们需要现在项目中增加对这个程序集的引用】   Project->Add Reference选中想引用组件类型的标签页


分享文章:.NET中结构与类的区别
浏览路径:http://ybzwz.com/article/jejdje.html