如果我有一组字符串常量想要存储,类似于 enum
,最好使用 struct
还是 static class
?例如:
public struct Roman
{
public const string One = "I";
public const string Five = "V";
public const string Ten = "X";
}
public static class Roman
{
public const string One = "I";
public const string Five = "V";
public const string Ten = "X";
}
最佳答案
静态类在 C# 环境中更为传统。使用结构的主要缺点是您可能会不小心创建它的实例。静态类将防止这种情况。 (在底层,静态类是abstract sealed
,因此您不能创建它的实例,也不能从它派生。您不能创建抽象结构,也不能创建无参数构造函数私有(private)的,因此无法创建“不可构造的”结构。)
这两种方法都不会对常量值的性能或行为产生任何影响。
关于c# - 将常量存储在结构或静态类中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25417839/