enums相关内容

Java泛型和枚举,模板参数丢失

我有一个相当复杂的结构,它没有按预期工作.这就是我所做的: 公共接口 ResultServiceHolder {>结果服务获取服务();}公共枚举 ResultTypes 实现 ResultServiceHolder {RESULT_TYPE_ONE {@覆盖public ResultOneService g ..
发布时间:2021-12-03 18:10:47 Java开发

如何在 Ruby 中实现枚举?

在 Ruby 中实现枚举习语的最佳方法是什么?我正在寻找可以使用(几乎)像 Java/C# 枚举的东西. 解决方案 两种方式.符号(:foo 符号)或常量(FOO 符号). 当你想提高可读性而不用文字字符串乱扔代码时,符号是合适的. postal_code[:minnesota] = "MN";postal_code[:new_york] = "纽约"; 当您具有重要的潜在价值时 ..
发布时间:2021-12-03 09:47:36 其他开发

什么是 Objective-C 中的 typedef 枚举?

我不认为我从根本上理解 enum 是什么,以及何时使用它. 例如: typedef enum {k圆,k矩形,球体形状类型; 这里真正声明的是什么? 解决方案 这里声明了三件事:声明了一个匿名枚举类型,ShapeType 被声明为该匿名枚举的 typedef,以及三个名称 kCircle、kRectangle 和 kOblateSpheroid 被声明为整数常量. 让我们分 ..
发布时间:2021-12-02 17:57:55 C/C++开发

是否可以在 Enum 中定义类常量?

Python 3.4 引入了一个新模块 enum,它添加了一个 枚举类型.enum.Enum 的文档提供了一个例子来演示它是如何可以扩展: >>>类行星(枚举):... 汞 = (3.303e+23, 2.4397e6)...金星 = (4.869e+24, 6.0518e6)...地球 = (5.976e+24, 6.37814e6)...火星 = (6.421e+23, 3.3972e6). ..
发布时间:2021-12-02 17:25:14 Python

如何通过忽略 Swift 中的关联值来比较枚举与关联值?

阅读如何测试Swift枚举的相等性使用关联值,我实现了以下枚举: enum CardRank {案例编号(Int)案例杰克案例女王案例王案例王牌}func ==(a: CardRank, b: CardRank) ->布尔{开关 (a, b) {case (.Number(let a), .Number(let b)) where a == b: return truecase (.Jack, ..
发布时间:2021-12-02 16:16:37 移动开发

Swift 常量:结构或枚举

我不确定两者中的哪一个更适合定义常量.一个结构体或一个枚举.每次我使用它时都会复制一个结构吗?在我看来,当我想到一个带有 static let 常量的结构时,它会一直复制是没有意义的.但如果它不会被复制,那么我拿什么都无所谓? 选择结构体或枚举有什么好处? Francisco 说使用 Struct. Ray Wenderlich 说使用 Enum 的.但我缺乏理由. 解决方 ..
发布时间:2021-12-02 16:10:51 移动开发

如何获得 Swift 枚举的计数?

如何确定 Swift 枚举中的案例数? (我想避免手动枚举所有值,或使用旧的“enum_count 技巧" 如果可能.) 解决方案 从 Swift 4.2 (Xcode 10) 开始,您可以声明符合 CaseIterable 协议,这适用于所有没有关联值的枚举: enum Stuff: CaseIterable {案例优先案例二案例三案例} 现在简单地获得案例数量 print( ..
发布时间:2021-12-02 15:55:26 移动开发

如何枚举字符串类型的枚举?

enum Suit: String {案例黑桃 = "♠"case heart = "♥"案例钻石=“♦"case clubs = "♣"} 例如,我该怎么做: forsuit in Suit {//用西装做点什么打印(suit.rawValue)} 结果示例: ♠♥♦♣ 解决方案 Swift 4.2+ 从 开始Swift 4.2(使用 Xcode 10),只需将协议一致性添加到 ..
发布时间:2021-12-02 15:39:13 移动开发

如何遍历 C# 中的所有枚举值?

这个问题已经有了答案: 如何在 C# 中枚举枚举? 26 个回答 公共枚举Foos{一种,乙,C} 有没有办法循环遍历 Foos 的可能值? 基本上? foreach(Foo 中的 Foo) 解决方案 是的,您可以使用 ‍GetValue‍‍s 方法: var values = Enum.GetValues(typeof(Foos)); 或打字版本: var values ..
发布时间:2021-12-02 13:55:45 C#/.NET

任何人都知道缺少枚举通用约束的好方法吗?

我想做的是这样的事情:我有带有组合标记值的枚举. 公共静态类 EnumExtension{public static bool IsSet(这个T输入,T matchTo)where T:enum//我想要的约束在C#3中不存在{return (input & matchTo) != 0;}} 那么我可以这样做: MyEnum tester = MyEnum.FlagA |MyEnum.Fl ..
发布时间:2021-12-02 13:51:05 C#/.NET

枚举“继承"

我在低级命名空间中有一个枚举.我想在“继承"低级枚举的中级命名空间中提供一个类或枚举. 命名空间低{公共枚举基础{x, y, z}}命名空间中{公共枚举消耗:low.base{}} 我希望这是可能的,或者某种可以代替枚举消耗的类,这将为枚举提供一个抽象层,但仍然让该类的实例访问枚举. 想法? 编辑:我没有在类中将其切换为 consts 的原因之一是我必须使用的服务需要低级枚举.我得 ..
发布时间:2021-12-02 13:31:25 C#/.NET

在 Rails 4.1 中从选择中保存枚举

我使用 Rails 4.1 中的枚举来跟踪酒的颜色. Wine.rb class Wine 在我看来,我生成了一个选择,以便用户可以选择具有特定颜色的酒 f.input :color, :as =>:select, :collection =>酒色 这会生成以下 HTML: red ..
发布时间:2021-12-02 12:43:17 其他开发

在 C 中使用枚举类型的变量作为字符串的简单方法?

这是我想要做的: typedef enum { ONE, TWO, THREE } 数字; 我正在尝试编写一个函数来执行类似于以下的 switch case: char num_str[10];int process_numbers_str(Numbers num) {开关(数量){案例一:案例二:案例三:{strcpy(num_str, num);//有什么方法可以在这里获取符号常量名称? ..
发布时间:2021-12-02 08:05:31 其他开发

C中枚举的大小是多少?

我正在创建一组枚举值,但我需要每个枚举值都是 64 位宽.如果我没记错的话,枚举通常与 int 大小相同;但我想我在某处读到过(至少在 GCC 中)编译器可以使枚举保持它们的值所需的任何宽度.那么,是否有可能有一个 64 位宽的枚举? 解决方案 enum 只能保证足够大以容纳 int 值.编译器可以根据定义的枚举常量自由选择使用的实际类型,因此如果它可以表示您定义的值,它可以选择较小的类型 ..
发布时间:2021-12-02 08:01:48 其他开发

为什么枚举类比普通枚举更受欢迎?

我听说有些人推荐在 C++ 中使用枚举类,因为它们的类型安全. 但这到底是什么意思? 解决方案 C++有两种enum: 枚举类es 普通enums 这里有几个关于如何声明它们的例子: enum class Color { red, green, blue };//枚举类枚举动物{狗,猫,鸟,人};//普通枚举 两者有什么区别? enum classes - ..
发布时间:2021-12-01 15:38:20 C/C++开发

从 C# 中的枚举获取 int 值

我有一个名为Questions(复数)的课程.在这个类中有一个名为 Question(单数)的枚举,它看起来像这样. 公共枚举问题{角色 = 2,项目资金 = 3,员工总数 = 4,服务器数 = 5,TopBusiness关注 = 6} 在 Questions 类中,我有一个 get(int foo) 函数,它返回一个 Questions 对象 foo.有没有一种简单的方法可以从枚举中获取整数 ..
发布时间:2021-12-01 09:51:10 C#/.NET

枚举的字符串表示

我有以下枚举: public enum AuthenticationMethod{表格 = 1,WINDOWSAUTHENTICATION = 2,单点 = 3} 然而,问题是当我要求 AuthenticationMethod.FORMS 而不是 id 1 时,我需要“FORMS"这个词. 我找到了针对此问题的以下解决方案(link): 首先,我需要创建一个名为“StringVal ..
发布时间:2021-12-01 09:36:52 C#/.NET

如何枚举一个枚举

如何在 C# 中枚举 enum? 例如以下代码无法编译: public enum Suit{黑桃,心,俱乐部,钻石}public void EnumerateAllSuitsDemoMethod(){foreach(西装套装){做某事(套装);}} 它给出了以下编译时错误: 'Suit' 是一种'类型',但用作'变量' 它在 Suit 关键字上失败,第二个. 解决方案 ..
发布时间:2021-12-01 09:29:58 C#/.NET

如何将 int 转换为枚举?

如何在 C# 中将 int 转换为 enum? 解决方案 From an int: YourEnum foo = (YourEnum)yourInt; 来自字符串: YourEnum foo = (YourEnum) Enum.Parse(typeof(YourEnum), yourString);//foo.ToString().Contains(",") 检查对于用 [Flags ..
发布时间:2021-12-01 09:20:52 C#/.NET

创建将 T 限制为 Enum 的通用方法

我正在构建一个函数来扩展 Enum.Parse 概念 允许在未找到枚举值的情况下解析默认值 不区分大小写 所以我写了以下内容: public static T GetEnumFromString(string value, T defaultValue) where T : Enum{if (string.IsNullOrEmpty(value)) 返回默认值;foreach (E ..
发布时间:2021-12-01 09:10:03 C#/.NET