我在VB中選擇如何調用一個函數動態
Dim ver =101
Select Case ver
Case 101
upd101()
Case 102
upd102()
Case 103
upd103()
End Select
我怎樣才能讓這個選擇更好的通過這種形式調用函數更動態: 前綴爲「UPD」,後跟一個版本整數..?
謝謝! Adrian
我在VB中選擇如何調用一個函數動態
Dim ver =101
Select Case ver
Case 101
upd101()
Case 102
upd102()
Case 103
upd103()
End Select
我怎樣才能讓這個選擇更好的通過這種形式調用函數更動態: 前綴爲「UPD」,後跟一個版本整數..?
謝謝! Adrian
它可能,但它不乾淨,或更快。
Dim t As Type = base.GetType()
t.GetMethod("upd" + theInt)
難道你不能只調用upd(param)?
我的意思是,而不是創建許多功能,創建一個和使用變量。 ;]
現在來吧,這將是愚蠢的。 – ChaosPandion 2010-09-09 18:09:37
我不明白你的意思,你能再多說一點嗎? – 2010-09-09 18:11:13
對不起,如果英語不是你的第一語言,你可能不會讀到諷刺。 – ChaosPandion 2010-09-09 18:12:11
Dim ver as Integer
dim procToCall as String
ver = 101
procToCall = "upd" & ver
CallByName myclassInstace, procToCall, vbMethod
編輯:這裏myClassInstance
是你創建的類的實例。
即讓我們假設你有一個名爲Person
的類,它有一個名爲ToString
的方法。
代碼看起來像
dim somePerson as new Person
CallByName somePerson, "ToString", vbMethod
然而,應避免使用這種編程風格。
您有多少種這種方法可以調用此表單中的方法?
這需要VB.NET,所以它可能不適合他們。 – ChaosPandion 2010-09-09 18:13:16
什麼是obj? Dim obj As New Object – Adrian 2010-09-09 18:29:35
這有幫助嗎?是所有方法都在其中定義的類的類型。 – Nix 2010-09-09 18:39:57