【发布时间】:2011-08-17 00:54:07
【问题描述】:
http://msdn.microsoft.com/en-us/library/cc138362.aspx
我参考了上面链接中的代码,它显示了向枚举类型添加值。 但它不适合我。 代码预期输出: 我得到了实际输出:
请参考代码:
**
// 预期输出:会议日期是周二、周四、周五
// 实际输出:会议日期是星期五
// 预期输出:会议日期是星期四、星期五
// 实际输出:会议日期为星期一**
class Program
{
enum Days2
{
None = 1,
Sunday = 2,
Monday = 3,
Tuesday = 4,
Wednesday = 5,
Thursday = 6,
Friday = 7,
Saturday = 8
}
static void Main(string[] args)
{
Days2 meetingDays = Days2.Tuesday | Days2.Thursday;
// Initialize with two flags using bitwise OR.
meetingDays = Days2.Tuesday | Days2.Thursday;
// Set an additional flag using bitwise OR.
meetingDays = meetingDays | Days2.Friday;
Console.WriteLine("Meeting days are {0}", meetingDays);
// Expected Output: Meeting days are Tuesday, Thursday, Friday
**// Actual Output: Meeting days are Friday**
// Remove a flag using bitwise XOR.
meetingDays = meetingDays ^ Days2.Tuesday;
Console.WriteLine("Meeting days are {0}", meetingDays);
// Expected Output: Meeting days are Thursday, Friday
**// Actaul Output: Meeting days are Monday**
Console.ReadLine();
}
}
【问题讨论】:
-
你不应该用 [Flags] 属性标记枚举吗?
-
我认为您的问题已经得到解答。
-
可能也是这个例子吗? codeproject.com/Articles/386634/…