相关疑难解决方法(0)

为什么我用枚举类型得到"type has typeinfo"错误

我已经声明了以下枚举类型,其中我希望第一个成员的序数值为1(一)而不是通常的0(零):

  type
    TMyEnum = (
               meFirstValue = 1,
               meSecondValue,
               meThirdValue
              );
Run Code Online (Sandbox Code Playgroud)

如果我调用TypeInfo(),例如作为对GetEnumName()的调用的一部分,我得到一个编译器错误:

  GetEnumName(TypeInfo(TMyEnum), Ord(aValue));
Run Code Online (Sandbox Code Playgroud)

错误:"E2134:类型'TMyEnum'没有typeinfo"

为什么是这样?

我知道,类只有所属类别,如果它们与编译$ M启用编译器选项,或者(在某些类是,如获得TPersistent,但我不认为有具有所属类别的枚举类型的任何特殊情况).

delphi enums rtti typeinfo

19
推荐指数
2
解决办法
6584
查看次数

标签 统计

delphi ×1

enums ×1

rtti ×1

typeinfo ×1