VB.NET 中的委托(Delegate)

一、什么是委托

简而言之,委托是指向方法的变量。

vbnet 复制代码
Dim a As Integer = 10   ' 指向数据
Dim d As Action        ' 指向方法

二、声明委托

使用 Delegate 关键字

vbnet 复制代码
Public Delegate Sub MyDelegate()  ' 无参的

Public Delegate Sub LogDelegate(msg As String)  ' 有参的

Public Delegate Function CalcDelegate(a As Integer, b As Integer) As Integer  ' 有返回值的

三、委托的使用

定义方法

vbnet 复制代码
Public Sub WriteLog(msg As String)
    Console.WriteLine(msg)
End Sub

创建委托并赋值,然后调用委托

vbnet 复制代码
Dim log As LogDelegate = AddressOf WriteLog
log("系统启动成功")
相关推荐
rockey6274 小时前
C#脚本引擎之AScript与Z.Expressions.Eval对比
c#·.net·script·expression·动态脚本
geovindu11 小时前
CSharp: Wordcloud
开发语言·后端·c#·.net·.netcore·词云
geovindu12 小时前
CSharp: Command Pattern
开发语言·后端·c#·.net·.netcore·命令模式·行为模式
谈资一本本17 小时前
电脑全能修复大师 Gilisoft Total Repair,智能检测修复系统、应用、游戏问题!DLL、DirectX、.NET运行库损坏修复+缺失自动补齐!
游戏·电脑·.net
公子小六1 天前
基于.NET的Windows窗体编程之WinForms滑块与上下控件
windows·microsoft·c#·.net·winforms
Lost of 程序猿2 天前
.NET 线程安全集合与并发数据结构深度实战:从 lock 到无锁
数据结构·安全·.net
rockey6272 天前
AScript之编译递归函数
c#·.net·script·动态脚本
陈珙2 天前
.NET AI 实战:用 MCP 把 Claude Code 变成数据库 DBA
架构·.net·技术
geovindu3 天前
CSharp: Template Method Pattern
开发语言·后端·c#·.net·模板方法模式·行为模式
步步为营DotNet3 天前
【MVP深度】.NET MAF:从单 Agent 到可恢复的多 Agent 工作流
.net