相关疑难解决方法(0)

[Flags]枚举属性在C#中意味着什么?

我不时会看到如下的枚举:

[Flags]
public enum Options 
{
    None    = 0,
    Option1 = 1,
    Option2 = 2,
    Option3 = 4,
    Option4 = 8
}
Run Code Online (Sandbox Code Playgroud)

我不明白[Flags]-attribute 到底是做什么的.

任何人都可以发布一个很好的解释或示例?

c# enums flags

1383
推荐指数
12
解决办法
46万
查看次数

如何在C#中传递多个枚举值?

有时在阅读其他人的C#代码时,我看到一个方法可以在一个参数中接受多个枚举值.我一直以为它有点整洁,但从未接受过它.

好吧,现在我想我可能需要它,但不知道该怎么做

  1. 设置方法签名以接受此
  2. 使用方法中的值
  3. 定义枚举

实现这种事情.


在我的特殊情况下,我想使用System.DayOfWeek,它被定义为:

[Serializable]
[ComVisible(true)]
public enum DayOfWeek
{ 
    Sunday = 0,   
    Monday = 1,   
    Tuesday = 2,   
    Wednesday = 3,   
    Thursday = 4,   
    Friday = 5,    
    Saturday = 6
}
Run Code Online (Sandbox Code Playgroud)

我希望能够将一个或多个DayOfWeek值传递给我的方法.我可以使用这个特殊的枚举吗?我如何做上面列出的3件事?

c# enums

111
推荐指数
7
解决办法
8万
查看次数

标签 统计

c# ×2

enums ×2

flags ×1