Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Kompilator języka Visual Basic wykonuje proces wywoływany binding
, gdy obiekt jest przypisany do zmiennej obiektu. Obiekt jest wcześnie powiązany, gdy jest przypisany do zmiennej zadeklarowanej jako konkretny typ obiektu. Wczesne obiekty powiązane umożliwiają kompilatorowi przydzielanie pamięci i wykonywanie innych optymalizacji przed wykonaniem aplikacji. Na przykład następujący fragment kodu deklaruje zmienną FileStreamtypu :
' Create a variable to hold a new object.
Dim FS As System.IO.FileStream
' Assign a new object to the variable.
FS = New System.IO.FileStream("C:\tmp.txt",
System.IO.FileMode.Open)
Ponieważ FileStream jest określonym typem obiektu, wystąpienie przypisane do FS
jest wcześnie wiązane statycznie.
Natomiast obiekt jest wiazany dynamicznie, gdy jest przypisany do zmiennej zadeklarowanej jako typ Object
. Obiekty tego typu mogą zawierać odwołania do dowolnego obiektu, ale brakuje im wielu zalet wcześniej wiązanych obiektów. Na przykład następujący fragment kodu deklaruje zmienną obiektu do przechowywania obiektu zwróconego CreateObject
przez funkcję:
' To use this example, you must have Microsoft Excel installed on your computer.
' Compile with Option Strict Off to allow late binding.
Sub TestLateBinding()
Dim xlApp As Object
Dim xlBook As Object
Dim xlSheet As Object
xlApp = CreateObject("Excel.Application")
' Late bind an instance of an Excel workbook.
xlBook = xlApp.Workbooks.Add
' Late bind an instance of an Excel worksheet.
xlSheet = xlBook.Worksheets(1)
xlSheet.Activate()
' Show the application.
xlSheet.Application.Visible = True
' Place some text in the second row of the sheet.
xlSheet.Cells(2, 2) = "This is column B row 2"
End Sub
Zalety wczesnego wiązania
Zawsze, gdy jest to możliwe, należy używać obiektów o wczesnej granicy, ponieważ umożliwiają kompilatorowi wprowadzanie ważnych optymalizacji, które zapewniają bardziej wydajne aplikacje. Wczesne powiązane obiekty są znacznie szybsze niż późne powiązane obiekty i ułatwiają odczytywanie i utrzymanie kodu dzięki określeniu dokładnie, jakiego rodzaju obiekty są używane. Kolejną zaletą wczesnego powiązania jest włączenie przydatnych funkcji, takich jak automatyczne uzupełnianie kodu i dynamiczna pomoc, ponieważ zintegrowane środowisko projektowe (IDE) programu Visual Studio może określić dokładnie typ obiektu, z którym pracujesz podczas edytowania kodu. Wczesne powiązanie zmniejsza liczbę i dotkliwość błędów występujących w czasie wykonywania, ponieważ umożliwia kompilatorowi zgłaszanie błędów, gdy program jest kompilowany.
Uwaga / Notatka
Późne wiązanie może być używane wyłącznie do uzyskiwania dostępu do elementów członkowskich typu, które są deklarowane jako Public
. Uzyskiwanie dostępu do członkowskich zadeklarowanych jako Friend
lub Protected Friend
powoduje błąd czasu wykonywania.