2011-10-24 151 views
2

我在VB.Net中已經注意到大多數Dim語句也包含賦值。例如:1聲明中的變量聲明(Dim)和賦值

Dim myvar As String = "Hello World" 

,因爲這是不可能的VB6我一直做了以下:

Dim myvar As String 
myvar = "Hello World" 

有什麼優勢/劣勢要麼風格?

+3

在VB6中這是不可能的!你必須寫兩行。 – dwo

+0

@dwo哦,你是對的!它一定是幽靈記憶。多麼奇怪。我將編輯該問題以澄清VB6引用。謝謝 – Caltor

回答

1

第一個和第二個沒有優點/缺點,因爲兩個功能都是相同的。

+0

這只是一個可讀性問題嗎? – Caltor

+0

@ Caller:是的...... – Heinzi

1

由於VB.NET支持類型推斷(Option Infer On)的當前版本,你也有第三種選擇:

Dim myvar = "Hello World" 

這相當於其他兩個選項。

  • 的優點是,它更簡潔(數據類型是顯而易見反正在這個例子中),
  • 的缺點是數據類型可能不是在所有情況下(Dim myvar = SomeMethod())明顯。

對於您提出的兩個選項,我總是比第二個選項更喜歡第一個選項,因爲它避免了重複,從而降低了輸入錯誤的風險。另外,由於閱讀器不必比較變量名稱,因此可以更快地讀取這些代碼。

+0

+1,通常在聲明一個變量的時候,你也想將它初始化爲某個值,所以你不妨一步完成。 –