Delegate Function : Delegate « Class Module « VB.Net Tutorial

Module Module1

    Delegate Function Numbers(ByVal A As Double, ByVal B As Double) As Double

    Function SubtractNumbers(ByVal A As Double, ByVal B As Double) As Double
        SubtractNumbers = A - B
    End Function

    Function AddNumbers(ByVal A As Double, ByVal B As Double) As Double
        AddNumbers = A + B
    End Function

    Sub Main()
        Dim DoNumbers As New Numbers(AddressOf SubtractNumbers)
        Console.WriteLine(DoNumbers.Invoke(100, 50))

        DoNumbers = AddressOf AddNumbers
        Console.WriteLine(DoNumbers.Invoke(100, 50))
    End Sub

End Module

6.28.1.Define delegate
6.28.2.Define a delegate to be a pointer to a subroutine that has a string parameter.
6.28.3.Use Delegate Sub
6.28.4.Delegate Function
6.28.5.Uses delegates to sort random numbers (ascending or descending)
6.28.6.Use AddressOf to assign function to a delegate
6.28.7.Comparison method based on delegate
6.28.8.Multiple Delegates
6.28.9.Math delegation
6.28.10.Use one Delegate to reference two different functions
6.28.11.Reference a method that has one parameter and returns a value: Func<(Of <(T, TResult>)>)