![]() |
1
8
无法扩展枚举中的值列表。枚举在声明和编译时是静态的。 另一种方法是停止使用枚举,并用其他数据类型或类层次结构替换它。 |
![]() |
2
0
其他人表示这是不可能的。我将在语言的细节上听从他们的意见。这个答案更像是“既然不起作用,该怎么做”。 显然,您的选择取决于您的应用程序。我经常看到枚举给任意整数值(而不是使用宏)指定名称和命名范围。如果这是您的用法,您可以选择构建字典(或字典对)来维护这些名称和值的索引。在您的基类中,您将用默认值填充它。在子类中,您以相同的方式添加它。在孙子班中,您以同样的方式添加到它中。在曾孙班,你补充说…… 这样一个系统的开销应该是最小的,因为除了存储整数之外,您只需要散列相对较短的字符串作为名称。与使用编译后的int值比较相比,在运行时确实会受到影响,但是查找应该可以忽略不计,除非您使用的是实时系统(如果您的语言是C)或企业系统。 |
![]() |
3
-1
最好的选择是:
如果此新属性返回一个全新的枚举值列表,或者如别处所述,请使用状态模式。 |
![]() |
Mear1628 · vb.net从随机选择的端口号接收UDP 7 月前 |
![]() |
user1946932 · .Net正则表达式在所有字符前添加空格 8 月前 |
![]() |
user1946932 · 正则表达式:删除连续两个以上的<br>? 1 年前 |
|
Josh · 通过反思访问孩子的财产 1 年前 |
![]() |
Khu RJ · 更新网格中的单元格-DevExpress网格控件 1 年前 |
![]() |
Mick · VB.NET Regex。替换不起作用(数组未更新) 1 年前 |