QJson/QMsgPack RTTI 注意事项

在Delphi截止XE7的实现中,RTTI信息也并不是特别完美,所以在特定的情况下是无法获取到相应的RTTI信息,目前已知:

1、在implementation中的声明没有RTTI信息,所以你要使用ToRtti/FromRtti/ToRecord/FromRecord等函数,你必需保证用到的类型声明的interface部分。

2、类型或对象的子类型如果是数组或动态数组里,应该将声明独立出来,否则,RTTI相关信息将无法有效使用。

如下面的代码无法用于RTTI相关函数:

相应的修改为下面的形式即可:

 

分享到:

2 条评论

沙发空缺中,还不快抢~