我很惊讶,但可以使用C#中的构造函数创建枚举.例如,我有枚举:
public enum Color
{
White = 1,
Red = 2
}
Run Code Online (Sandbox Code Playgroud)
然后它可以像这样创建:
var color = new Color();
Run Code Online (Sandbox Code Playgroud)
并且该值将为0,这实际上是无效的枚举值.
那么,我们能以某种方式禁止枚举构造函数吗?任何其他想法如何避免这种情况?
谢谢.