详细介绍C#类型系统

C#类型系统

创新互联-专业网站定制、快速模板网站建设、高性价比坡头网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式坡头网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖坡头地区。费用合理售后完善,10余年实体公司更值得信赖。

既然你知道了怎样创建一个简单的C#程序,我将会给你介绍C#类型系统。在这一章中,你学到如何使用不同的值和引用类型,加框和消框机制能为你作些什么。尽管这一章的不侧重于例子,但你可以学到很多重要的信息,关于如何创建现成类型的程序。

值类型

各种值类型总是含有相应该类型的一个值。C#迫使你初始化变量才能使用它们进行计算-变量没有初始化不会出问题,因为当你企图使用它们时,编译器会告诉你。每当把一个值赋给一个值类型时,该值实际上被拷贝了。相比,对于引用类型,仅是引用被拷贝了,而实际的值仍然保留在相同的内存位置,但现在有两个对象指向了它(引用它)。C#的值类型可以归类如下:
◆简单类型(Simple types )
◆结构类型(struct types)
◆枚举类型(Enumeration types)

1.简单类型

在C#中出现的简单类型共享一些特性。第一,它们都是.NET系统类型的别名。第二,由简单类型组成的常量表达式仅在编译时而不是运行时受检测。最后,简单类型可以按字面被初始化。以下为C#简单类型归类:
◆整型
◆布尔型
◆字符型 (整型的一种特殊情况)
◆浮点型
◆小数型

2.结构类型

一个结构类型可以声明构造函数、常数、字段、方法、属性、索引、操作符和嵌套类型。尽管列出来的功能看起来象一个成熟的类,但在C#中,结构和类的区别在于结构是一个值类型,而类是一个引用类型。与C++相比,这里可以用结构关键字定义一个类。

使用结构的主要思想是用于创建小型的对象,如Point和FileInfo等等。你可以节省内存,因为没有如类对象所需的那样有额外的引用产生。例如,当声明含有成千上万个对象的数组时,这会引起极大的差异。

包含一个命名为IP的简单结构,它表示一个使用byte类型的4个字段的IP地址。我不包括方法等,因为这些工作正如使用类一样,将在下一章有详细的描述。

定义一个简单的结构

 
 
 
  1. using System;
  2. struct IP{
  3. public byte b1,b2,b3,b4;
  4. }
  5. class Test{
  6. public static void Main(){
  7. IP myIP;
  8. myIP.b1 = 192;
  9. myIP.b2 = 168;
  10. myIP.b3 = 1;
  11. myIP.b4 = 101;
  12. Console.Write("{0}.{1}.",myIP.b1,myIP.b2);
  13. Console.Write("{0}.{1}",myIP.b3,myIP.b4);
  14. }
  15. }

3.枚举类型

当你想声明一个由一指定常量集合组成的独特类型时,枚举类型正是你要寻觅的。最简单的形式,它看起来可能象这样:enum MonthNames { January, February, March, April };

因我惯用缺省设置,故枚举元素是int型,且第一个元素为0值。每一个连续的元素按1递增。
◆如果你想给第一个元素直接赋值,可以如下把它设成1:enum MonthNames { January=1, February, March, April };
◆如果你想赋任意值给每个元素——甚至相同的值——这也没有问题:enum MonthNames { January=31, February=28, March=31, April=30 };
◆最后的选择是不同于int的数据类型。可以在一条语句中按如此赋值:enum MonthNames : byte { January=31, February=28, March=31, April=30 };
你可以使用的类型仅限于long、int、short和byte.

以上介绍C#类型系统

新闻标题:详细介绍C#类型系统
转载注明:http://www.shufengxianlan.com/qtweb/news10/246660.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联