Supongamos que tiene una enumeración que representa un código de error. Habrá varios códigos, cada uno con su propio valor int subyacente; sin embargo, el valor enum que obtiene el valor 0 predeterminado parece que debe considerarse cuidadosamente.C#: ¿El valor predeterminado de una enumeración debe ser Ninguno o Desconocido?
En el caso de un código de error enum, hay dos valores especiales que puedo pensar: Ninguno (para los casos cuando no hay error) y Desconocido (para los casos en que no existe un código de error existente, o incluso cuando el estado de error no puede ser detectado).
Uno de estos valores parece que debería obtener 0, donde el otro probablemente obtendrá algo más como -1. ¿Es más apropiado establecer el valor Ninguno en 0, o el valor Desconocido en 0?
public enum ErrorCode
{
None = -1,
Unknown = 0,
InsufficientPermissions,
ConnectivityError,
...
}
public enum ErrorCode
{
Unknown = -1,
None = 0,
InsufficientPermissions,
ConnectivityError,
...
}
Mi instinto me dice que el valor predeterminado debe ser Desconocido, pero me da curiosidad si alguien lo ha hecho de manera diferente.
Gracias por responder la pregunta según las convenciones, y no distraerse por lo malo que es. – bwerks