close
昨天在聖殿祭司的部落格看了這篇文章後,對於VB在暱名型別上的實作非常疑問,於是寫了些程式碼來測試一下。
Dim temp() = {New With {.name = "aa", .age = 10}, _
New With {.name = "bb", .age = 11}, _
New With {.name = "cc", .age = 10}}
For Each Item In temp
Console.WriteLine(Item.name)
Next
而執行的結果如下:
但在寫程式的時候,我發現以下的狀況
之後我再寫了其它的程式碼來測試
Dim Models() = {New With {.Name = "Kevin", .Sex = "Male", .Country = "USA", _
.Height = 180, .Weight = 75, .PhoneNo = "0912-456789"}, _
New With {.Name = "Mary", .Sex = "Female", .Country = "UK", _
.Height = 174, .Weight = 53, .PhoneNo = "0915-333278"}}
For Each Item In Models
Console.WriteLine(Item.Sex)
Console.WriteLine(Item.Name)
Console.WriteLine()
Next
Console.WriteLine(Models.GetType().ToString())
執行結果如下:
之後祭司在他的部落格提到,這究竟是強型別還是弱型別?我想這個問題已經可以解釋為什麼前面的程式碼不會出現IntelliSense了。 而VB在暱名型別上的確有實作,但就是沒實作暱名型別的陣列,這點真的很令人疑問。
PS:第一次去研究VB的東西,好不習慣....
全站熱搜
留言列表