在以下選項中,哪些是在VB.NET中聲明數組的首選語法?在VB.NET中聲明數組的首選語法是什麼?
Dim numbers1() As Integer
與
Dim numbers2 As Integer()
MSDN文章How to: Initialize an Array Variable in Visual Basic提到第二選項作爲優選的句法:Dim chars2 As Char()...
,但第一選擇似乎多見於其他文件。第二種選擇可能會令人困惑,因爲它與調用沒有參數的構造函數非常相似。
E.g.
Dim customer As New Customer() ' Initialize a new Customer
看起來類似於:
Dim customer As Customer() ' An uninitialized array of Customers
這個問題是相似的,但不同:Different ways of declaring arrays in VB.NET。
這是什麼原因一個廣泛的問題,也是一個長期以來一直存在爭議的問題。 '首選語法'本身**取決於** ...'Dim numbers1()As Integer'我會用這個來指定數組邊界,例如'Dim numbers1(5)As Integer',另一個如果我不知道界限可能是什麼。老實說,Dim numbers1()As Integer'和Dim dim2 As Integer()'是一樣的,沒有區別......它們都是沒有邊界(限制)的數組。 – Codexer
@ Zaggler嚴格地說'Dim n(5)由於Int32'不再是一個聲明,它是一個初始化,所以應該超出問題的範圍。也就是說,使用第一種語法(AFAIK是第一個版本可能用於參數聲明的唯一其他地方)沒有更多優勢,第二種語法與其他使用「數組聲明」(作爲屬性的返回類型或功能,通用參數等)。 – Sehnsucht
感謝您的輸入。我剛剛在MSDN上找到了[Visual Basic編碼約定](https://msdn.microsoft.com/en-us/library/h63fsef3.aspx),其中聲明「將數組標識符放在類型上,而不是放在變量上」 (例如'Dim letters4 As String()')。 –