CallByName:函数在运行时用来获取属性,设置属性或调用方法。
例子:
Imports Microsoft.VisualBasic.CallType'该方法所在的运行库
Sub TestCallByName1()
' 设置对象的属性值
CallByName(TextBox1, "Text", CallType.Set, "New Text")
' 获取对象的属性值
MsgBox(CallByName(TextBox1, "Text", CallType.Get))
' 调用对象的方法
CallByName(TextBox1, "Hide", CallType.Method)
End Sub
DirectCast:关键字引入类型转换操作。其使用方法和Ctype一样
例子:
Dim Q As Object = 2.37
Dim I As Integer = CType(Q, Integer) ' 成功,原因:只要定义了表达式与类型之间的有效转换,Ctype就会成功。
Dim J As Integer = DirectCast(Q, Integer) '失败,原因:DirectCast 则要求对象变量的运行时类型与指定的类型相同。如果参数类型不匹配,DirectCast 会引发 InvalidCastException 错误
如果类型匹配,DirectCast比Ctype在运行时的性能更好。
HashTable:表示键/值对的集合,这些键/值对根据键的哈希代码进行组织,该类对内存的消耗较大。
HybridDictionary:在集合较小时,使用ListDictionary [url=http://msdn.microsoft.com/library/CHS/cpref/html/frlrfsystemcollectionsspecializedlistdictionaryclasstopic.asp][/url]来实现 IDictionary,然后当集合变大时,切换到HashTable。