哪位解释一下RTTI啊?(100分)

  • 主题发起人 主题发起人 蓝叶菱
  • 开始时间 开始时间

蓝叶菱

Unregistered / Unconfirmed
GUEST, unregistred user!
1。RTTI 运行时类型信息还是运行时类型标识
英文缩写是什么啊?
是Runtime Type Information 还是Runtime Type Identify呢?
2。Delphi6/7有没有提供Reflection(反射机制),Delphi2006中菜单有这个单词那么它究竟是什么呢?

各位回答一个是一个啊。。。
 
RTTI(Run-Time Type Information) 翻译过来的名称是“运行期类型信息”,也就是说可以在运行期获得数据类型或类(class)的信息
Delphi 的 RTTI 主要分为类(class)的 RTTI 和一般数据类型的 RTTI
 
第二个问题呢?
 
7。0版本以下的,没有Reflection
这个是borland抄来的概念
 
楼上的,能否具体解释一下反射。
新加入的又那些不同?特征什么的。让我更加了解一下,另外这个和DELPHI2006菜单的Reflect应该不是一回事是吗?
 
.NET Framework提供了System.Reflection命名空间,就可以方便的获得.NET组件的信息。当你想获得正在使用的组件的详细信息,或者在运行期间查询一个组件信息的时候,这个功能就使用了。
 
Dim moduleInfo As System.Reflection.Module
Dim typeInfo As System.Type
Dim methodInfo As System.Reflection.MethodInfo

For Each moduleInfo In assemblyInfo.GetModules()

Debug.WriteLine(moduleInfo.Name)
Debug.Indent()
For Each typeInfo In moduleInfo.GetTypes()
Debug.WriteLine(typeInfo.Name)
Debug.Indent()
For Each methodInfo In typeInfo.GetMethods()
Debug.WriteLine(methodInfo.Name)
Next
Next
Next
GetModules方法循环该组件从而获得该组件中的每一个模块,并使用GetTypes()方法来显示此程序集中定义的所有类型(或者类),还可以使用GetMethods.方法获取当前 Type 的特定方法
--------------------------------
注明:这是转载ZDNet 的描述
 
多人接受答案了。
 
后退
顶部