随笔分类 - Delphi-RTTI
摘要:TTypeKind,类型类别,tkclass,tkinteger,tkstring等。类,属性都是一种类型。ttypedata,是一个record包括ttypekind。是一个类的描述。TTypeKing只是这许多描述中的一种。GetTypeData函数,获取类的相关信息,当然也包括属性的信息,比如...
阅读全文
摘要:一月 27th, 2005 by 猛禽风焱在《“18般武艺”?》中说到他碰上的被多种语言纠缠的问题。我在回复里说:很多语言只要能看懂几分就行了,没必要每一种都精通但是如果只会很少的一两种语言也是不行的。因为看了一些关于JAVA的反射技术的应用,忽然想到DELPHI的RTTI也很强,于是试着拿数据集下...
阅读全文
摘要:RTTI需要引用单元TypeInfo GetPropInfo 函数用于获得属性的 RTTI 指针 PPropInfo。它有四种重载形式,后面三种重载的实现都是调用第一种形式。AKinds 参数用于限制属性的类型,如果得到的 PPropInfo 不属于指定的类型,则返回 nil。 function G
阅读全文
摘要:关于反射的用途是『降低模块间的耦合度』这个倒未必尽然 单就delphi来说,从实现上看,它的所谓反射是基于RTTI,而RTTI的出现按照官方的说法是为了实现RAD中窗体文件DFM的持久化而产生的,其实也不是针对DFM文件或TForm啦,由于TPersistent在声明的时候加上了{$M+},所以从T
阅读全文
摘要:Delphi2010之后的RTTI做了很大休整,现在用起来很爽了哦。甚至可以获取某些类的内部私有单元,然后为其赋值!讲这个RTTI增强的,可以参考网上的多个博客内容,我列举一下:Delphi2010RTTI的增强Delphi的Anymouse方法探秘万一的Rtti系列我这里的主要目的是挂钩某些内部私
阅读全文
摘要:RTTI(RunTime Type Information): 运行时类型信息, 就是在程序运行后也能得到类型(譬如 TButton 类)的信息.这在早期主要用于 IDE 设计时, 譬如把一个 Button 放到窗体后, 此时我们的程序虽然没有运行, 但在 Delphi 的 IDE 编辑环境中, 这
阅读全文