如何动态调用函数

时间:2010-09-09 18:06:05

标签: vb.net

我在vb中有一个选择器

Dim ver =101
Select Case ver
        Case 101
            upd101()
        Case 102
            upd102()
        Case 103
            upd103()
    End Select

如何通过以这种形式更动态地调用函数来更好地选择此选项:  前缀为“upd”后跟一个ver整数..?

谢谢你! 阿德里安

3 个答案:

答案 0 :(得分:5)

你不能只调用upd(param)吗?

我的意思是,不是创建很多函数,而是创建一个并使用变量。 ]

答案 1 :(得分:4)

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

但是,请避免使用这种编程方式 有多少这样的方法可以用这种形式调用方法?

答案 2 :(得分:3)

这是可能的,但它不干净或更快。

Dim t As Type = base.GetType()

t.GetMethod("upd" + theInt)