c ++中的枚举类-replacement- in c#

时间:2016-05-23 09:59:58

标签: c# c++ class enums

看看这些 c ++ 代码:

enum class Flag : int32 {
    f_unread = (1 << 0),
    f_out = (1 << 1),
    f_mentioned = (1 << 4),

    MAX_FIELD = (1 << 4),
};

c#中隐含的代码是什么?

1 个答案:

答案 0 :(得分:5)

Using Tangible。好像它差别不大。

[Flags]
public enum Flag : int
{
    f_unread = (1 << 0),
    f_out = (1 << 1),
    f_mentioned = (1 << 4),

    MAX_FIELD = (1 << 4),
}

在c#中,要将enum用作标记操作的位字段,应将其添加FlagsAttribute,在[FlagsAttribute]之前添加[Flags]enum }。