封装枚举

Encapsulate enum

我正在尝试了解如何在 C# 中使用枚举。我已经在谷歌上搜索过了,但我不知道如何封装枚举。

我有一个 class,其中包含一个枚举属性。如何封装此属性以便我可以在 class?

之外使用它
private enum cost { Price, Diff };

您必须声明枚举:

  public enum Cost { 
    Price, 
    Diff 
  };

然后使用它

  public class MyClass {
    // property of "Cost" type
    public Cost MyCost {
      get;
      set; 
    }
    ...
  }

您可以将枚举声明移到 class 之外,如下所示,然后可以在整个项目中使用它作为 cost cos = cost.Price

public enum cost 
    {
        Price, Diff
    }

    public class ExampleClass
    {
    }

您只需将枚举视为普通 class 对象。

假设你有这个枚举:

public enum CoffeType
{
    regular,
    decaf
}

你有一个 class:

public class CoffeeOrder
{
    public string CustomerName {get;set}
    public CoffeeType CoffeeType {get;set;}
    // ..other properties 
}

你会看到枚举就像正常的封装一样 class 属性...