Перечисления в С# отрицательные побочные эффекты использования отрицательного числа

В перечислении С# существуют ли какие-либо отрицательные побочные эффекты использования отрицательного числа?

Я моделирую коды ответов и один из отрицательных кодов. Это компилируется, но я хочу знать, есть ли какие-то негативные побочные эффекты.

public enum ResponseCodes
{
    InvalidServerUserPasswordCombo = -1,

    // etc.
}

Ответ 1

отрицательные побочные эффекты использования отрицательного числа

Очевидно, что с любым базовым типом подписки любые побитовые операции будут очень интересными.

Но использование перечисления как набора связанных констант вполне может использовать отрицательные значения.

Ответ 2

Нет никаких отрицательных побочных эффектов, однако имейте в виду, что перечисление в этом случае инициализируется нулем:

class YourClass {
    public ResponseCodes ResponseCode { get; set; }
}

Предоставление только отрицательного будет иметь нежелательное воздействие для любых пользователей класса (если они не инициализируют его.

Ответ 3

Нет, перечисление - это значение с целым типом, и это может быть любое значение от -2147,483,648 до 2,147,483,647!:)