Har*_*uki 4 delphi enumeration rtti delphi-xe
当我尝试在Delphi XE中编译具有5000+值的Enum类型的单元时,我收到此错误
[DCC错误] uCities.pas(5834):'TCity'的E2575 RTTI太大; 使用$ RTTI缩小范围或减小类型大小
我怎么解决这个问题?
像
{$WEAKLINKRTTI ON}
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
Run Code Online (Sandbox Code Playgroud)
没有帮助.
提前致谢
您正在使用枚举列出城市??? 这是新的.
使用查找数据结构比使用枚举更好.
编辑:您可以使用,例如,TClientDataset,或者您可以使用TDictionary(来自Generics.Collections单位),如果您进行任何类型的查找(从TCity值获取城市的字符串名称).
并帮助这里的人们帮助你: TCidade对那些看不懂葡萄牙语的TCity人没有任何意义,但是人们可以更好地了解你的问题.
具有5000+值的Enum类型不是您手工编写的Enum.现在有5k值的Enum明天会有10k.
您应该修改生成枚举的代码,以生成简单的常量.使用Integer(或Smallint)作为实际类型.这应该是好的.
| 归档时间: |
|
| 查看次数: |
651 次 |
| 最近记录: |