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