vb中WITH的用法
看看msdn上怎么解釋的.
With 語句
在一個單一對象或一個用戶定義類型上執行一系列的語句。
語法
With object
[statements]
End With
With 語句的語法具有以下幾個部分:
部分 描述
object 必要參數。一個對象或用戶自定義類型的名稱。
statements 可選參數。要執行在 object 上的一條或多條語句。
說明
With 語句可以對某個對象執行一系列的語句,而不用重復指出對象的名稱。例如,要改變一個對象的多個屬性,可以在 With 控制結構中加上屬性的賦值語句,這時候只是引用對象一次而不是在每個屬性賦值時都要引用它。下面的例子顯示了如何使用 With 語句來給同一個對象的幾個屬性賦值。
With MyLabel
.Height = 2000
.Width = 2000
.Caption = "This is MyLabel"
End With
注意 當程序一旦進入 With 塊,object 就不能改變。因此不能用一個 With 語句來設置多個不同的對象。
可以將一個 With 塊放在另一個之中,而產生嵌套的 With 語句。但是,由于外層 With 塊成員會在內層的 With 塊中被屏蔽住,所以必須在內層的 With 塊中,使用完整的對象引用來指出在外層的 With 塊中的對象成員。
重點 一般來說,建議您不要跳入或跳出 With 塊。如果在 With 塊中的語句被執行,但是 With 或 End With 語句并沒有執行,則一個包含對該對象引用的臨時變量將保留在內存中,直到您退出該過程。
vb with語句和Using語句的用法和意義是什么(我是初學者,希望說的
with是幫你減少重復的書寫工作。
dim it as class1
with it
.name=""
.level=2
end with
using語句,定義一個范圍,在范圍結束時處理對象
Using conn As New SqlConnection
'執行代碼
'當在某個代碼段中使用了類的實例,而希望無論因為什么原因,只要離開了這個代碼段就自動調用這個類實例的Dispose。
End Using
vb中with的使用
With 語句在一個單一對象或一個用戶定義類型上執行一系列的語句。
語法With object[statements]End WithWith 語句的語法具有以下幾個部分:部分 描述 object 必要參數。一個對象或用戶自定義類型的名稱。
statements 可選參數。要執行在 object 上的一條或多條語句。
說明With 語句可以對某個對象執行一系列的語句,而不用重復指出對象的名稱。例如,要改變一個對象的多個屬性,可以在 With 控制結構中加上屬性的賦值語句,這時候只是引用對象一次而不是在每個屬性賦值時都要引用它。
下面的例子顯示了如何使用 With 語句來給同一個對象的幾個屬性賦值。With MyLabel .Height = 2000 .Width = 2000 .Caption = "This is MyLabel"End With注意 當程序一旦進入 With 塊,object 就不能改變。
因此不能用一個 With 語句來設置多個不同的對象。可以將一個 With 塊放在另一個之中,而產生嵌套的 With 語句。
但是,由于外層 With 塊成員會在內層的 With 塊中被屏蔽住,所以必須在內層的 With 塊中,使用完整的對象引用來指出在外層的 With 塊中的對象成員。重點 一般來說,建議您不要跳入或跳出 With 塊。
如果在 With 塊中的語句被執行,但是 With 或 End With 語句并沒有執行,則一個包含對該對象引用的臨時變量將保留在內存中,直到您退出該過程。
with語句在VB中只適用于自定義型嗎
經常需要在同一對象中執行多個不同的動作。例如,需要對同一對象設置幾個屬性。途徑之一是使用多條語句。
Private Sub Form_Load()
*n = "OK"
*e = True
* = 200
* = 5000
*d = True
End Sub
應注意的是所有這些語句使用同一個對象變量 Command1。通過使用 With。End With 語句,可使該代碼更容易編寫、閱讀和更有效地運行。
Private Sub Form_Load()
With Command1
.Caption = "OK"
.Visible = True
.Top = 200
.Left = 5000
.Enabled = True
End With
End Sub
還可以通過將 With。End With 語句置入另一個 With。End With 語句內實現嵌套的 With 語句。
以上是MSDN的內容,我使用的時候主要是覺得可以少打幾個字,還有看起來結構清晰些,至于性能方面不清楚怎樣。至于適用范圍,我的感覺是包括控件/類/自定義類型(結構)。