日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
新手必讀VB.NET動態(tài)標識符

什么詞語前加上動態(tài)兩個字給人的感覺就是活的,而我們的開發(fā)語言也是一樣的,動態(tài)語言給我?guī)砗莒`活的運行行為。在.net陣營,c#一直扮演著靜態(tài)語言的角色,盡管3.0的語法改變很激進,但仍注重于編譯時的類型檢查和約束。動態(tài)特性用的不好會產(chǎn)生更多運行時問題,不易確保程序的可靠性,但其提高開發(fā)效率的作用是毋庸置疑的。visual Basic 9.0是Visual Studio中唯一能讓你統(tǒng)領動態(tài)和靜態(tài)兩大領域的語言,讓你在程序中自由選擇喜歡的風格。

visual Basic 從1.0便支持后期綁定,即按照對象的運行時類型信息使用對象,而不是定義這個對象時的類型信息。VB.NET動態(tài)標識符如:

 
 
 
  1. Dim l As Object = New ArrayList()
  2. l.Add(12)
  3. l.RemoveAt(0)

我們知道object沒有add或removeat方法,但運行時類型arraylist具有他們,因此visual Basic允許到運行時再檢查有無相應的操作并支持。既然這個過程已經(jīng)是在運行時做的了,我們就應該允許這個后期綁定的操作本身也是在運行時確定。這個語法增強叫做VB.NET動態(tài)標識符。比如我們可以和這樣寫:

 
 
 
  1. Dim l As Object = New ArrayList()
  2. l.("Add")(12)
  3. l.("RemoveAt")(0)

我們看到,這個時候方法名稱add和removeat已經(jīng)是字符串了,它當然也可以是包含字符串的變量!所以你甚至可以寫出這樣的代碼:

 
 
 
  1. (Console.ReadLine())(12)
  2. ("Remove" & "At")(0)

這樣,作為方法名稱的標識符就可以完全在動態(tài)期間確定了。方法名稱如此,那么類型名稱呢?理應如此。我們可以這樣寫:

 
 
 
  1. Dim l As Object = New ("ArrayList")()

這樣,你的變量l的類型將根據(jù)一個運行時字符串的值確定。動態(tài)標識符還能將函數(shù)的參數(shù)也動態(tài)化,假設有下列子程序:

 
 
 
  1. Sub Method1(Optional arg1 As String, Optional arg2 As String)

運行的時候,我們可以動態(tài)地指定將數(shù)值賦給哪個參數(shù):

 
 
 
  1. If a > 0 Then argString = "arg1" Else argString = "arg2"
  2. Method1({argString}:= a.ToString())

注意在:=符號之前的大括號,表示對參數(shù)名稱的動態(tài)結(jié)合。有了VB.NET動態(tài)標識符這一特性,visual Basic 9.0將不需要利用反射的復雜語法,就可以做很多需要反射和運行時類型信息來做的任務,這使得Visual Basic成為解決你手邊小問題的最佳幫手。本期我們已經(jīng)領略到Visual Basic 9.0在動態(tài)特性上的革新,下一期將介紹第二個動態(tài)特性——動態(tài)接口。


文章名稱:新手必讀VB.NET動態(tài)標識符
文章出自:http://m.5511xx.com/article/cocside.html