Imports System
Public Class MainClass
Dim emp As New Employee("First Name", "Last Name")
Private Delegate Function NumEmployeesDelegate() As Integer
Shared Sub Main(ByVal args As String())
Dim show_num As NumEmployeesDelegate
show_num = AddressOf Employee.GetNumEmployees
Console.WriteLine(show_num().ToString)
End Sub
End Class
Public Class Employee
Private m_FirstName As String
Private m_LastName As String
Private Shared m_NumEmployees As Integer = 0
Public Shared Function GetNumEmployees() As Integer
Return m_NumEmployees
End Function
Public Sub New(ByVal first_name As String, ByVal last_name As String)
m_FirstName = first_name
m_LastName = last_name
m_NumEmployees += 1
End Sub
Public Overrides Function ToString() As String
Return m_FirstName & " " & m_LastName
End Function
Private disposedValue As Boolean = False ' To detect redundant calls
End Class