【发布时间】:2015-05-14 12:07:21
【问题描述】:
我有一个带有字符串表示和二进制 int 表示的位掩码错误代码的枚举:
type ErrorCodes =
| NoError = 0
| InvalidInputError = 1
| AuthenticationFailedError = 2
| InvalidArgumentError = 4
| ItemNotFoundError = 8
| UnknownError = 16
在运行程序时,我使用按位 OR 运算符 (|||) 收集所有错误。所以现在我有一些看起来像 01100 的东西。如何打印到控制台:“InvalidArgumentError”和“ItemNotFoundError?”
我有一个想法只是使用:
for i = 0 to 32 do
if ((err.GetHashCode() % 2) = 1) then
Console.WriteLine("ErrorCode: {0}",err.GetHashCode())
但现在我被困在如何打印实际字符串上
【问题讨论】:
标签: error-handling enums f# hashcode bitmask