一周学会C#(枚举一)

原创 2004年01月12日 17:12:00

一周学会C#(枚举一)

C#才鸟(QQ:249178521

1.类型<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

·       值类型

w       变量直接包含它们自己的数据

w       局部变量总是放在栈(stack)

·       引用类型

w       变量间接指向它们的数据

w       局部变量指向堆(heap)中的对象

枚举(enum    值类型

结构(struct    值类型

类(class       引用类型

接口(interface  引用类型

数组([ ]array    引用类型

委托(delegate   引用类型

你可能对上面的例子感到奇怪,c#中的内在类如int,double怎么没有。C#规定这些内在类属于结构,C#称之为简单类型。简单类型和用户自定义类型之间的最大区别是前者有字面表达式(如42),而后者没有。

当然,还有第三种类型:指针。但指针只用在由unsafe关键字标识的非安全的代码中。

2.枚举类型

·       它是一个用户声明的值类型

enum Suit

{

    Clubs, Diamonds, Hearts, Spades

}

//Suit表示一副牌,它有4个花色:梅花(Clubs),方块(Diamonds),红心(Hearts)//黑桃(Spades)

sealed class Example

{

    static void <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Main()

    {

        ...

        Suit lead = Spades; //错误

        ...

        Suit trumps = Suit.Clubs; //正确

        ...

    }

}

枚举的声明可以出现在类声明的相同地方。

枚举的声明包括名字、访问权限、内在的类型和枚举的成员。

枚举中声明的常量的范围是定义它们的枚举,换言之,下面的例子是错误的:

              Suit trumps = Clubs;

Clubs必须被限制为Suit的一个成员,就如下面:

       Suit trumps = Suit.Clubs;

3.枚举的注意点

·       枚举值缺省为int

w       你可以选择任一内在的整数类型

w       但不能是字符型

enum Suit : int //内在类型是int,可以省略

    {

        Clubs,

        Diamonds,

        Hearts = 42, //成员的取值缺省为前一个成员取值+1,但可以自己赋初值

        Spades, //最后一个分号是可选的

    };//可以有结尾分号

枚举类可以显式的声明它的内在类型是sbyte, byte, short, ushort, int, uint, long,  ulong。如果一个枚举类没有显式声明它的内在类型,则缺省为int

成员的取值必须和枚举声明的内在类型相同,并且必须在内在类型的范围之内(例如,你不能让成员的取值为负数,而枚举的内在类型是uint)。

如果成员没有被赋值, 那么它的取值是前一个成员取值+1,第一个成员的缺省值是1。枚举的成员的取值可以有相同的取值。

最后一个枚举成员可以使用一个结尾分号,这使得你将来可以很方便地加入更多的成员。

枚举成员的访问权限隐含为public

 

一周学会Linux

什么是Linux 大部分人在日常使用中没有用过Linux,导致在一些人眼中觉得Linux很神秘,会Linux编程好牛逼,心中不由自主腾起一股敬仰之情~其实它没那么神秘,只是一个操作系统,和window...
  • everl_1
  • everl_1
  • 2016年08月30日 19:19
  • 195

一周学会Linux实战

为什么学习Linux? 1、Linux的性能卓越。 Linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是巨型项目都在使用Linux。很多软...
  • ahuang1900
  • ahuang1900
  • 2014年07月26日 01:39
  • 579

C#枚举类型的常用操作总结

枚举类型是定义了一组“符号名称/值”配对。枚举类型是强类型的。每个枚举类型都是从system.Enum派生,又从system.ValueType派生,而system.ValueType又从system...
  • pengze0902
  • pengze0902
  • 2016年11月27日 19:45
  • 1108

C#中枚举类型的作用

C#中枚举类型的作用
  • syaguang2006
  • syaguang2006
  • 2014年04月24日 22:14
  • 1291

C# 枚举在项目中使用心得

阅读目录 基本介绍使用注意使用方法扩展用法     本文主要是我在项目中对C#枚举的使用心得,如有不足的地方欢迎您指出。 一、基本介绍 ...
  • jiangfei009003
  • jiangfei009003
  • 2016年09月14日 15:25
  • 3717

c#枚举 获取枚举键值对、描述等

using System; using System.Collections.Generic; using System.Collections.Specialized; using System.C...
  • smartsmile2012
  • smartsmile2012
  • 2016年09月29日 10:24
  • 3531

c#枚举值增加特性说明

通过特性给一个枚举类型每个值增加一个字符串说明,用于打印或显示。 自定义打印特性 [AttributeUsage(AttributeTargets.Field)] public class Enu...
  • jiangfei009003
  • jiangfei009003
  • 2017年05月12日 14:55
  • 343

C#中枚举的使用

C#枚举的使用 枚举的使用。 首先来看枚举是什么? 枚举类型是一种的值类型,它用于声明一组命名的常数。  一.声明: enum 枚举名 { 中间放入值. } 如: enum Student { 小...
  • meishengjie111
  • meishengjie111
  • 2017年10月18日 14:39
  • 410

C#中Enum枚举类型的简单使用

枚举类型的介绍:  枚举类型是由一组特定常量构成的一组数据结构,是值类型的一种特殊形式,当需要一个由指定常量集合组成的数据类型时,使用枚举类型。枚举声明可以显式地声明 byte、sbyte、shor...
  • sundacheng1989
  • sundacheng1989
  • 2013年05月22日 09:26
  • 18922

C#枚举类型、枚举类型与其他类型转换、结构类型、数组类型

1、 C#中的常量用constant标定,不能改变或赋值; 2、 枚举类型 [public ] enum 枚举名     // 访问标识符、枚举关键字、枚举名(符合Pascal命名规范) { 值1...
  • yanhuatangtang
  • yanhuatangtang
  • 2017年05月25日 16:08
  • 362
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一周学会C#(枚举一)
举报原因:
原因补充:

(最多只允许输入30个字)