问题标签 [enums]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
21572 浏览

c++ - C++ 枚举到无符号整数比较

我在目前正在处理的代码中发现了这一点,并认为这是我遇到的一些问题的原因。

在某处的标题中:

然后稍后 - 初始化:

并使用

调试代码,nextIndex 中的值不太有意义(它们非常大),我发现它被声明了:

因此,INVALID_INDEX 的初始设置使 unsigned int 下溢并将其设置为一个巨大的数字。我认为这是导致问题的原因,但仔细观察,测试

行为正确,即当 nextIndex 为“大 +ve 值”时,它从未执行 if 的主体。

它是否正确?这是怎么回事?枚举值是否被隐式转换为与变量相同类型的无符号整数,因此以相同的方式包装?

0 投票
14 回答
682352 浏览

c# - 来自值的枚举字符串名称

我有一个这样的枚举构造:

在我的数据库中,枚举是按值引用的。我的问题是,如何将枚举的数字表示转回字符串名称。

例如,给定2结果应该是Visible.

0 投票
1 回答
2098 浏览

.net - 如何在 Windows 窗体设置文件中存储枚举值?

我正在使用 Windows 窗体和 VS2008。我想在我的应用程序的设置文件中存储一个枚举值。

VS2008 中的设置编辑器只给了我一组有限的类型。令人惊讶的是,枚举似乎不是自动支持的这些类型之一 - 我是否正确理解这一点?

通过阅读该主题,似乎我可能需要编写一个 TypeConverter 类,以使我的枚举能够转换为字符串,反之亦然。我已经为我的枚举实现了这个,并将 TypeConverter 属性添加到我的枚举中,以指示要用于该枚举的转换器类。

但是,当我尝试在我的设置文件(在“选择类型”)对话框中指定它时,它只是说我的类型没有定义,所以我有点卡住了。

谁能向我解释如何将枚举存储在 Windows 窗体应用程序的设置文件中?这似乎是一个非常简单(并且通常需要)的功能,我很惊讶它还没有得到支持,而且我似乎必须做很多工作才能让它工作(而且只有一个枚举!)。

因此,我想我一定错过了一些东西,而且实际上真的很容易......

假设我的枚举如下所示:

...如何将此枚举中的值存储在我的设置文件中?(当然要检索它)。

(显然我可以只存储一个字符串或整数并自己解释,但这看起来很笨拙,我希望 Windows 窗体能够更干净地处理这类事情。)

0 投票
3 回答
4477 浏览

java - 如何在 Spring 应用程序上下文中注入 Jakarta 枚举?

我有一个构造函数采用Jakarta enums的类。我试图找到如何通过Spring XML aplicationContext 轻松注入它。

例如 :

枚举:

注入的类:

应用程序上下文:

当然,我有一个no matching editors or conversion strategy found错误。Spring 和 Jakarta 枚举之间是否有简单的集成?还是我应该编写自己的 PropertyEditor ?

0 投票
2 回答
8503 浏览

java - 在 Java 中扩展枚举

在上面的枚举中,当我为 VAL3 添加一个常量特定类主体时,究竟会发生什么?

VAL3 的类型定义为 myEnum 的子类型,因为它具有重载和附加方法。(类类型为 'myEnum$1' )

但是编译器如何创建一个扩展 myEnum 的子类型枚举,因为所有枚举都已经在扩展 java.lang.enum ?

0 投票
5 回答
12345 浏览

c# - 在 C# 2.0 中生成随机枚举

有人可以向我指出一种更清洁的方法来生成随机枚举成员。这有效,但看起来很难看。

谢谢!

0 投票
7 回答
71886 浏览

c++ - 枚举 C++ 按索引获取

我想知道在 C++ 中,如果我有一个枚举,我可以访问第二个索引处的值吗?例如我有

如果我想要“嗨”,我可以做一些类似 Test[0] 的事情吗,谢谢。

0 投票
2 回答
806 浏览

c# - 将枚举与数据库中的静态数据同步

我有一个交付状态代码的枚举。当我将交付数据保存到数据库时,它们会使用外键存储到包含相同数据(即相同的交付代码)的表中

使枚举与数据库中的数据保持同步的最佳策略是什么?

您是否只记得在将新代码添加到数据库时添加到枚举中?

或者在应用程序启动时将数据加载到字典中?并使用字典而不是枚举?虽然这意味着我没有数据的强类型表示 - 这是我绝对想要的。

或者是其他东西?

数据不是很不稳定,但每个蓝月亮都会添加一次新代码

将不胜感激任何建议。

谢谢

0 投票
5 回答
3968 浏览

c# - 枚举结构?行为类似于 Enum 的 Value 对象

我想知道你将如何解决这个问题

我有两种适用于我的产品的税率。我特别想避免将税率持久化到数据库中,同时仍然能够在中心位置更改它们(例如税率从 20% 到 19% 等)。

所以我决定将它们编译到我的应用程序中会很棒(它是内部的)。问题是我不仅想知道税率,还想知道税率的名称。

我可以使用映射到该值的枚举。但是我必须创建一些方法来检索英语枚举值的该税率的德语名称(我用英语编写代码,应用程序是德语)。

我想过只使用硬编码的对象来反映这一点,

但是我必须创建某种列表来保存这两个对象的两个实例。做静态可能有效,但我仍然必须保留某种列表。此外,我必须找到一种方法将我的 POCO 域对象映射到此,因为我怀疑 NHibernate 是否可以根据字段中的值实例化正确的对象。

感觉不太对劲,我想我在这里遗漏了一些东西。希望有人有更好的解决方案,我想不出一个。

问候,丹尼尔

Ps:如果你找到合适的东西,也请重新标记这个问题,我现在想不出更有意义的标签。

0 投票
3 回答
9072 浏览

c# - 为什么我必须在 C# 中将枚举转换为 int?

这是我的代码:

有没有办法阻止铸造?