VB.NET隱式類型局部變量使用方法
我們51CTO的編輯們曾經為大家介紹過有關Linq隱式類型化局部變量,以及.NET Framework隱式類型變量的基本概念,那么今天我們要向大家介紹的則是VB.NET隱式類型局部變量的一些相關用法,相信可以在大家學習的過程中獲得一些幫助。
VB.NET隱式類型局部變量聲明中,局部變量的類型是通過局部聲明語句右側的初始值設定項表達式推斷的。
例如,編譯器推斷以下所有變量聲明的類型:
以下是引用片段:
- Dim population = 31719
- Dim name = "Belize"
- Dim area = 1.9
- Dim country = New
Country With {
.Name = "Palau", ...}
因此,它們完全等效于以下顯式類型聲明:
以下是引用片段:
- Dim population As Integer = 31719
- Dim name As String = "Belize"
- Dim area As Float = 1.9
- Dim country As Country =
New Country With {
.Name = "Palau", ...}
由于VB.NET隱式類型局部變量聲明的類型是通過新增的 Option Infer On(新項目的默認值)推斷的,因此不管 Option Strict 的設置如何,對此類變量的訪問始終是早期綁定的。程序員必須在 Visual Basic 9.0 中顯式指定后期綁定,方法是將變量顯式聲明為 Object 類型,如下所示:
以下是引用片段:
- Dim country As Object =
New Country With {
.Name = "Palau", ... }
推斷類型可防止意外使用后期綁定,更重要的是,它允許為新數(shù)據類型(如 XML)綁定強大擴展,如下所示。
For...Next 或 For Each...Next 語句中的循環(huán)控制變量也可以是隱式類型的變量。指定循環(huán)控制變量時(如 For I = 0 To SmallCountries.Count 或 For Each country In smallCountries 中所示),標識符定義一個新的隱式類型局部變量,其類型通過初始值設定項或集合表達式推斷且作用于整個循環(huán)。通過應用此類型推斷,可以重新編寫打印所有小國家/地區(qū)的循環(huán),如下所示:
以下是引用片段:
- For Each country
In smallCountries- Console.WriteLine
(country.Name)- Next
country 的類型被推斷為 Country,即 SmallCountries 的元素類型。
以上就是我們對VB.NET隱式類型局部變量的一些相關介紹。
【編輯推薦】