【发布时间】:2016-08-01 10:50:59
【问题描述】:
枚举的默认值为整数。但是,当我们使用 Enumeration 时,我们不会使用这么多的值。所以我的问题是:
enum TYPE : byte{HORIZONTAL , DIAGONAL} //uses 1 byte
enum TYPE {HORIZONTAL , DIAGONAL} // int by default. Uses 4 bytes
- 1) 3 字节空间是否为我们节省了这么多空间?它对当今的计算机有何影响?
- 2)如果是,为什么它的默认值不是字节?
- 3)一个好的程序员应该做什么?
P.S 我为糟糕的英语道歉,这不是我的母语。
【问题讨论】:
-
它不会节省空间,除非您创建该枚举的大型数组。这应该是非常罕见的。极端情况是结构中使用的枚举,该结构具有小于 4 个字节长的其他成员。而且效率低下,需要额外的机器代码将字节转换为 int 并返回。处理器真的很喜欢他们的“本机”类型,在所有可以执行 .NET 代码的处理器上都是 int。
标签: c# performance byte enumeration