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("系统启动成功")
相关推荐
魏杨杨2 小时前
一个程序员眼中的 AI 核心概念,讲透 LLM 、Agent 、MCP 、Skill 、RAG...
ai·.net·agent·claude code
AI行业学习10 小时前
.NET Framework 3.5 官方离线包下载+完整安装教程【2026.5.19】
.net
切糕师学AI12 小时前
.NET 中 CallerMemberName 与 StackTrace 的深度对比
.net·调用栈·stacktrace·callermember
步步为营DotNet16 小时前
解锁.NET 11 新境:ASP.NET Core 10 在微服务安全通信的深化与实践
微服务·asp.net·.net
唐青枫16 小时前
C#.NET YARP + OpenTelemetry:网关链路追踪实战
c#·.net
rockey6271 天前
AScript异步执行与await关键字
c#·.net·script·eval·expression·异步执行·动态脚本
叫我少年1 天前
ASP.NET Core 最小 API 快速参考
.net·api
步步为营DotNet2 天前
深入.NET 11:C# 14 在边缘计算数据处理的优化与实践
c#·.net·边缘计算
步步为营DotNet2 天前
洞悉.NET 11:Blazor 与 Microsoft.Extensions.AI 的融合创新实践
人工智能·microsoft·.net
回忆2012初秋2 天前
.NET 8.0 实战:基于 MQTTnet 封装高可用的 MQTT 发布/订阅工具类
开发语言·mqtt·.net