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("系统启动成功")
相关推荐
学以智用17 小时前
C# Console App(控制台应用)模板详解
.net
宝桥南山2 天前
.NET 11 - 尝试一下Minimal API中的异步验证新特性
microsoft·微软·c#·asp.net·.net·.netcore
无风听海2 天前
深入理解.NET中的 Lazy<T>
服务器·php·.net
海盗12342 天前
微软技术日报 2026-10-14:十月补丁 1411 个漏洞,.NET 11 交出 RC2
人工智能·microsoft·机器人·aigc·.net
学以智用2 天前
.NET WinForms / WPF / Blazor 模板详解
.net
黄一一9112432 天前
吾爱大佬开发,离线可用!PDF文件处理工具,本地网页版文件-浏览器里就能搞定,所有操作系统可用
windows·安全·阿里云·pdf·.net·开源软件
慧都小妮子3 天前
MSG 附件太占内存?Aspose.Email for .NET 26.9 延迟加载
c#·.net·aspose·内存优化·延迟加载·aspose.email·附件内存
学以智用3 天前
ASP.NET Core 项目模板详解:Web应用 / Web API / MVC / Razor Pages
.net
IT规划师3 天前
MQTT实战 - 用了8年MQTT,我为什么还要重新系统啃一遍(一)
物联网·.net
邹肖桥4 天前
使用S7.net动态库对西门子Plc S7-1200进行通讯操作
.net