gpt4 book ai didi

c# - 枚举和使用带有常量的静态类有什么区别?

转载 作者:行者123 更新时间:2023-11-30 13:10:03 25 4
gpt4 key购买 nike

这两项之间的性能影响是什么?我最近在野外看到了静态类,但我不确定该怎么做。

public enum SomeEnum
{
One = 1,
Two,
Three
}

public static class SomeClass
{
public static readonly int One = 1;
public static readonly int Two = 2;
public static readonly int Three = 3;
}

最佳答案

区别在于类型安全。假设您有两个这样的枚举。您将如何区分:

void SomeMethod(int x, int y)

// Compiles, but won't do what you want.
SomeMethod(SomeOtherClass.Xyz, SomeClass.One);

对比

void SomeMethod(SomeEnum x, SomeOtherEnum y)

// Compile-time error
SomeMethod(SomeOtherEnum.Xyz, SomeEnum.One)

所以到处你有一个表达式想要成为一组特定值中的一个,你可以让读者编译器清楚地知道哪一组值如果您使用枚举,您感兴趣的值。只有整数……没那么多。

关于c# - 枚举和使用带有常量的静态类有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5558415/

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