gpt4 book ai didi

c# - 如何在 C# 中以某种方式将枚举类型定义为 float 或 double

转载 作者:太空狗 更新时间:2023-10-29 22:12:42 24 4
gpt4 key购买 nike

它说 here enum 的可能类型是 bytesbyteshortushortintuintlongulong

如果我需要 floatdouble 来定义百分比增量,例如 1.52.5 怎么办例子?我卡住了吗?

正如这里所说: http://en.csharp-online.net/.NET_Type_Design_Guidelines%E2%80%94Enum_Design

An enum is a structure with a set of static constants. The reason to follow this guideline is because you will get some additional compiler and reflection support if you define an enum versus manually defining a structure with static constants.

既然枚举是一组常量,为什么我不能有浮点常量?

更新:这里说: http://en.csharp-online.net/.NET_Type_Design_Guidelines%E2%80%94Enum_Design“您是否知道 CLR 支持具有 float 或 double 基础类型的枚举,即使大多数语言不选择公开它?”

因为我只使用 C#,有没有办法通过一些技巧来做到这一点?

最佳答案

是的,你被困在那里了。您不能将 enum 与浮点类型一起使用。您可以使用带有常量的静态类,但是:

public static class MyFloatEnum {
public const float One = 1.0;
public const float OneAndAHalf = 1.5;
// etc.
}

它在 IntelliSense 中看起来有些接近。或者,您可能只想使用常量:

public const float A = 0.5;
public const float B = 17.62;

关于c# - 如何在 C# 中以某种方式将枚举类型定义为 float 或 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8371319/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com