枚举

枚举在什么地方适用呢?一条普遍规则是,任何使用常量的地方,例如目前用switch 代码切换常量的地方。如果只有单独一个值(例如,鞋的最大尺寸,或者笼子中能装猴子的最大数目),则还是把这个任务留给常量吧。但是,如果定义了一组值,而这些值中的任何一个都可以用于特定的数据类型,那么将枚举用在这个地方最适合不过。

有没有知道VB.net 中枚举和数组的区别,我认为数组和枚举一样的,能不能举个例子说明枚举的应用?
 
 

#1楼 得分:2回复于:2008-10-17 18:15:54
枚举是值类型,数组是引用类型
 
#2楼 得分:2回复于:2008-10-17 18:22:18


不知道你为什么会觉得他们一样呢?
 
#3楼 得分:0回复于:2008-10-17 18:25:41
引用 2 楼 JeffChung 的回复:


不知道你为什么会觉得他们一样呢?
,,,
 
  • vrhero用户头像
  • vrhero
  • (若批评不自由则赞美无意义...)
  • 等 级:
#4楼 得分:0回复于:2008-10-17 18:27:53
引用 2 楼 JeffChung 的回复:


不知道你为什么会觉得他们一样呢? 

lz是火星人...鉴定完毕...
 
#5楼 得分:2回复于:2008-10-17 18:44:44
一个是常量的集合,一个是变量的集合.呵呵
 
  • cnapc用户头像
  • cnapc
  • (明月照大江)
  • 等 级:
#6楼 得分:0回复于:2008-10-18 09:45:49
枚举对象在任一时刻只能有一个常量值,数组对象在任一时刻可以有多个值. ^-^
 
#7楼 得分:0回复于:2008-10-20 09:47:51
呵、我可不是什么火星人啊!我现在就是想不明白他们在应用的时候的区别,比如我现在定义了一个枚举,里面有3个值
然后呢我new这个枚举,在把他的值付给变量,这样做的话我也可以用一个数组来实现啊,我现在不明白的是枚举比数组
有那些好处呢。
 
  • cnapc用户头像
  • cnapc
  • (明月照大江)
  • 等 级:
#8楼 得分:5回复于:2008-10-20 10:11:43
枚举它有一个直观的名字啊
比如Color[myColor.Rad]如果用Color[2],谁看的明白呢?
还有
  select case Style
  case myStyles.Window
  case myStyles.Linux
  ....

比 case 1 ,case 2 要明白多了

还有,比如你有一个列表list,列顺序是 ID,Name,Address...
  取数是ID = list[0],Name = list[1]...那如果在Name列前插入一列Sex,那Name要改成=list[2],麻烦又容易错
如果用枚举 enum myList{ID,Name,Address...}
  取数就是ID = list[myList.ID]...那如果在Name列前插入一列Sex,只要修改enum myList{ID,Sex,Name,Address...}不需要修改其他代码
 
#9楼 得分:5回复于:2008-10-20 14:21:04
引用 6 楼 cnapc 的回复:
枚举对象在任一时刻只能有一个常量值,数组对象在任一时刻可以有多个值. ^-^

这位说的对,关键点在这里啊。

枚举对象是 一个变量有一个值,数组对象是 一组值。

VB.NET code
            
            
Public Enum Enum1 First = 1 Second = 2 Three = 3 End Enum Dim e As Enum1, e_Array As Enum1( 2 ) e = Enum1.Second e_Array( 0 ) = Enum1.First e_Array( 1 ) = Enum1.Second e_Array( 2 ) = Enum1.Three

楼主看出区别了吗?
 
  • vrhero用户头像
  • vrhero
  • (若批评不自由则赞美无意义...)
  • 等 级:
#10楼 得分:2回复于:2008-10-20 16:16:54
引用 7 楼 conggang 的回复:
呵、我可不是什么火星人啊!我现在就是想不明白他们在应用的时候的区别,比如我现在定义了一个枚举,里面有3个值 
然后呢我new这个枚举,在把他的值付给变量,这样做的话我也可以用一个数组来实现啊,我现在不明白的是枚举比数组 
有那些好处呢。

枚举是标签,数组是容器,不可相提并论...你见过一个标签可以变两个吗,你会拿标签和钱包比哪个好有什么区别吗...看事物要看本质...
 
  • wdzr_826用户头像
  • wdzr_826
  • ((大鱼——舞指如歌))
  • 等 级:
#11楼 得分:2回复于:2008-10-20 16:35:09
枚举和数组完全不相干的两个概念。你问有什么区别,我甚至找不出有什么相同之处。枚举是一个定义,一个标签,是定死的。数组是一个集合,是用来存放数据的。
 
#12楼 得分:0回复于:2008-11-04 11:19:15
呵,听了大家的话,明白了,自己想的有些极端了,谢谢各位的解说!!谢谢~
 
#13楼 得分:0回复于:2010-07-28 19:23:50
我也明白了,向大家学习
 
#14楼 得分:0回复于:2011-04-25 09:35:51
嵌入式学习路线.pdf
 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值