在vb.net中,代表元delegate有点类似c语言中的指针,也就是说它允许用户传送一个进程的引用,然后调用这些引用的进程。这是一个强有力的编程技术,它将允许用户不再需要if或者是select语句就可以调用相应的进程,这里的代表元起着桥梁的作用。
新建记事本,下面是代码:
imports system
imports system.windows.forms
public module mymodule
delegate sub mydele(byval my1 as int32, byval my2 as int32)
sub main()
dim dele as mydele
dele = addressof my_add
dele.invoke(10, 20)
dele = addressof my_sub
dele.invoke(10, 20)
dele = addressof my_mul
dele.invoke(10, 20)
dele = addressof my_div
dele.invoke(10, 20)
end sub
public sub my_add(byval num1 as int32, byval num2 as int32)
messagebox.show("add:" & (num1 + num2).tostring, "你好", messageboxbuttons.ok)
end sub
public sub my_sub(byval num1 as int32, byval num2 as int32)
messagebox.show("add:" & (num1 - num2).tostring)
end sub
public sub my_mul(byval num1 as int32, byval num2 as int32)
messagebox.show("add:" & (num1 * num2).tostring)
end sub
public sub my_div(byval num1 as int32, byval num2 as int32)
messagebox.show("add:" & (num1 / num2).tostring)
end sub
以delegate.vb保存。
然后编译:
vbc /r:system.dll /r:system.windows.forms.dll delegate.vb
最后看结果就行了:)
文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




