Почему я получаю сообщение об ошибке «type no typeinfo» с типом enum
Я объявил следующий тип перечисления, в котором я хочу, чтобы первый член имел порядковый номер 1 (один), а не обычный 0 (ноль):
type
TMyEnum = (
meFirstValue = 1,
meSecondValue,
meThirdValue
);
Если я позвонюTypeInfo ()например, как часть звонкаGetEnumName ()Я получаю ошибку компилятора:
GetEnumName(TypeInfo(TMyEnum), Ord(aValue));
ОШИБКА: "E2134: Тип 'TMyEnum» не имеет typeinfo "
Почему это?
Я знаю, что классы имеют typeinfo, только если они скомпилированы с$ M опция компилятора включена или (производная от некоторого класса, который был, например,TPersistent) но я неНе думаю, что были какие-то особые условия для наличия typeinfo для перечисляемых типов.