VB.NET - Action和Func委托

Action是系统定义的一系列委托,它们可以指向可以有参数(泛型定义)但没有返值的方法。
Action :无参数
Action〈T〉 :有一个参数
Action<T1,T2>:有两个参数
[好像最多定义了16个参数的]
委托可以理解为C++的指向函数的指针,而Action更象函数模板。

与Action对应,Func就是有返回值的函数模板。

示例如下:

Imports System
Module Module1

    Sub Main()
        '使用addressof 指定指向函数 
        Dim f1 As New Action(Of String)(AddressOf Prnt)

        '指向lambda 表达式
        Dim f2 As Action = Sub()
                               Console.WriteLine("SUB2" + Environment.NewLine)
                           End Sub

        '指向lambda 表达式
        Dim f3 As New Action(Sub()
                                 Console.WriteLine("SUB3" + Environment.NewLine)
                             End Sub)

        'func同理,增加一个返回类型,注:最后一个形参就是返回类型
        'Dim f4 As Func(Of Integer) = Function() As Integer
        '                                 Return 8
        '                             End Function


        f1("SUB1")
        f2()
        f3()
        Console.ReadKey()
    End Sub

    Private Sub Prnt(strContent As String)
        Console.WriteLine(strContent + Environment.NewLine)
    End Sub

End Module

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值