Function. A Function returns a value. It uses a special syntax form in the VB.NET language. The Function optionally accepts one or more parameters—these are called formal parameters.
A Function is part of a Module, Class or Structure. A Function is called from other Functions, Subs or Properties. It can be reused throughout a program.
First example. This program shows the Function keyword. We provide an Area Function: this Function receives a radius. It returns a Double that is the area of a circle with that radius.
Detail Area receives one formal parameter of type Double. Specifying the type of the parameter is optional but advised.
Return The Function returns a value of type Double. After the formal parameter list, the keywords "As Double" indicate the return type.
Module Module1
''' <summary>
''' Get area of a circle with specified radius.
''' </summary>
Function Area(ByVal radius As Double) As Double
Return Math.PI * Math.Pow(radius, 2)
End Function
Sub Main()
Dim a As Double = Area(4.0)
Console.WriteLine(a)
End Sub
End Module50.2654824574367
No argument. A Function must return a value—otherwise we must use a Subroutine. But a Function does not need to receive a value—it can have an empty parameter list.
Module Module1
Function GetID() As Integer
' This function receives no arguments.
Return 100
End Function
Sub Main()
' Use GetID function.
Console.WriteLine(GetID())
End Sub
End Module100
Functions, Properties. What is the difference between a Function and a Property? A Property is a type of Function. The Get part of a Property can be implemented as a Function.
Info Properties are meant to replace getters and setters. If you have a Sub that sets a value, it can be changed to be a Property.
Tip At the level of the implementation, Properties are similar to Functions and Subs.
And If you want to, you can change all Properties on your types to Functions and Subs.
But On existing types, such as those in .NET, you must use the Property syntax if the member is a Property.
Module Module1
ReadOnly Property ID As Integer
Get
Return 100
End Get
End Property
Function GetID() As Integer
Return 100
End Function
Sub Main()
' Use property and function.
Console.WriteLine("PROPERTY: {0}", ID)
Console.WriteLine("FUNCTION: {0}", GetID())
End Sub
End ModulePROPERTY: 100
FUNCTION: 100
Return values. A Function can only return one value. But if this value is a class or Structure, it can return many values in this step. ByRef can be used to set output parameters.
A summary. Unlike a Sub, a Function returns a value. We must return this value—if we have no return value, we need to use a Sub instead. We can assign to the result of a Function.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.