问题标签 [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 回答
1203 浏览

c# - 使用属性来减少枚举到枚举的映射和枚举/常量到动作的切换语句

我想每个人都看过这样的代码:

我们可以做类似的事情,而不是这种坏事:

现在我们可以使用反射来遍历 ServerEnum 并从枚举声明本身获取转换映射。

我在这里遇到的问题是在 Enum2Enum 属性的声明中。

这有效,但用 Enum e 替换对象 o 无效。我不想能够将对象传递给构造函数,只有其他枚举。

这无法编译。

编译错误是否有原因?除了以下内容之外,我还能如何传递映射所需的信息:

这似乎太冗长,但如果这是唯一的方法,那么我想我会使用它。

0 投票
11 回答
88350 浏览

c# - 如何比较 C# 中的标志?

我在下面有一个标志枚举。

我不能让 if 语句评估为真。

我怎样才能做到这一点?

0 投票
2 回答
2080 浏览

hibernate - 在 Hibernate 的 Criteria API 中查询值类型的集合

在我的数据库中,我有一个实体表(我们称之为实体)。每个实体可以有多个实体类型,实体类型的集合是静态的。因此,存在一个连接表,其中包含实体 id 和实体类型名称的行。在我的代码中,EntityType 是一个枚举,Entity 是一个 Hibernate 映射的类。
在实体代码中,映射如下所示:

哦,我有没有提到我正在使用注释?
现在,我想做的是为特定实体类型的所有实体对象创建一个 HQL 查询或搜索。

Hibernate 论坛中的这个页面说这是不可能的,但是这个页面是 18 个月大的。谁能告诉我此功能是否已在 Hibernate 的最新版本之一中实现,或计划在即将发布的版本中实现?

0 投票
5 回答
21729 浏览

.net - 组合枚举

有没有办法在 VB.net 中组合枚举?

0 投票
4 回答
12845 浏览

c# - 枚举类型的 UserControl 属性在设计器中显示为 bool 或根本不显示

我有一个具有多个公共属性的用户控件。这些属性会自动显示在 VS2005 设计器的“Misc”类别下的属性窗口中。除了两个作为枚举的属性没有正确显示。

第一个使用以下枚举:

这根本不会出现在设计器中。

第二个使用这个枚举:

这个出现了,但设计师似乎认为它是一个布尔值,只显​​示 True 和 False。当您使用控件构建项目时,它会说它无法将类型 bool 转换为 AutoSizeMode。

此外,这些枚举被声明为全局命名空间,因此它们在任何地方都可以访问。

有任何想法吗?

0 投票
4 回答
3127 浏览

c# - 在 C# 中表示参数化枚举的最佳方法?

是否有任何好的解决方案来表示参数化枚举C# 3.0?我正在寻找像OCamlHaxe这样的东西。我现在只能想到具有简单枚举字段以便于切换的类层次结构,也许有更好的想法?

请参阅下面其中一个回复中的 Ocaml 示例,以下是 Haxe 代码:

0 投票
18 回答
219036 浏览

c++ - 在 C++ 中前向声明枚举

我正在尝试执行以下操作:

编译器拒绝。我快速浏览了谷歌,共识似乎是“你做不到”,但我不明白为什么。谁能解释一下?

澄清 2:我这样做是因为我在一个采用所述枚举的类中有私有方法,并且我不希望暴露枚举的值 - 所以,例如,我不希望任何人知道 E 被定义为

因为我不想让我的用户知道项目 X。

所以,我想转发声明枚举,这样我就可以将私有方法放在头文件中,在 cpp 内部声明枚举,并将构建的库文件和头分发给人们。

至于编译器——它是 GCC。

0 投票
5 回答
6663 浏览

java - Spring 2.5 中的枚举和依赖注入图

假设我们有以下 Java 代码:

这段代码片段只不过是稍微改进的侦听器模式,其中每个侦听器都在告诉它感兴趣的事件类型,并且提供的方法维护这些关系的并发映射。

最初,我希望通过我自己的注释框架调用此方法,但遇到了各种注释限制的砖墙(例如,您不能将java.lang.Enum作为注释参数,还有一组各种类加载器问题)因此决定使用Spring。

谁能告诉我如何 Spring_ify_ 这个?我想要实现的是:
1. 将维护者类定义为 Spring bean。
2. 使各种监听器都可以使用addListener方法通过XML注册到Maintainer 。Spring doc 和 Google 在示例中都非常慷慨。

有没有办法轻松实现这一目标?

0 投票
25 回答
209699 浏览

ruby - 如何在 Ruby 中实现枚举?

在 Ruby 中实现枚举习惯用法的最佳方法是什么?我正在寻找可以(几乎)使用的东西,例如 Java/C# 枚举。

0 投票
10 回答
28894 浏览

c++ - C ++中的64位枚举?

有没有办法在 C++ 中使用 64 位枚举?在重构一些代码时,我遇到了一堆#defines,它们作为枚举会更好,但大于 32 位会导致编译器出错。

出于某种原因,我认为以下方法可能有效: