Оператор AddressOf
Обновлен: Ноябрь 2007
Создает экземпляр делегата процедуры, ссылающийся на указанную процедуру.
AddressOf procedurename
Компоненты
- procedurename
Обязательный атрибут. Указывает процедуру, на которую указывает созданный делегат процедуры.
Заметки
Оператор AddressOf создает делегат функции, указывая на функцию, заданную при помощи procedurename. Если указанная процедура является методом экземпляра, то делегат функции ссылается и на экземпляр, и на метод. Затем при вызове указанного делегата функции вызывается указанный метод или экземпляр.
Оператор AddressOf используется как операнд конструктора делегата, либо его можно использовать в контексте, в котором тип делегата определяется компилятором.
Пример
В данном примере оператор AddressOf применяется, чтобы назначить делегат для обработки события Click кнопки.
' Add the following line to Sub Form1_Load().
AddHandler Button1.Click, AddressOf Button1_Click
В следующем примере оператор AddressOf используется, чтобы назначить функцию запуска для потока.
Public Sub CountSheep()
Dim i As Integer = 1 ' Sheep do not count from 0.
Do While (True) ' Endless loop.
Console.WriteLine("Sheep " & i & " Baah")
i = i + 1
System.Threading.Thread.Sleep(1000) 'Wait 1 second.
Loop
End Sub
Sub UseThread()
Dim t As New System.Threading.Thread(AddressOf CountSheep)
t.Start()
End Sub