Я хочу объявить новое перечисление с нестандартным базовым типом. Это работает:
public enum MyEnum : short
{ A, B, C, }
Но я не понимаю, почему это не компилируется:
public enum MyEnum : System.Int16
{ A, B, C, }
Компилятор говорит
Введите byte, sbyte, short, ushort, int,
ожидаемый, длинный или длинный
Я понимаю, что short - это псевдоним для Int16 во всех версиях .NET (включая 32/64-битные версии). Я не понимаю, почему компилятор дает другое значение псевдониму в данном конкретном случае.
Есть объяснения?