2010-02-11 11 views
7

En este código:¿Qué es diferente entre los archivos Dim() Como archivos String y Dim As String()?

Dim files() As String = Directory.GetFiles("C:/") 

Dim files As String() = Directory.GetFiles("C:/") 

es que hay una diferencia entre las declaraciones?

+2

Antes, cuando VB no tenía constructores parametrizados, archivos Dim como String() era evidente. Pero ahora con los constructores es probablemente preferible usar los archivos Dim() como String para evitar confusiones. – Josh

Respuesta

5

Los dos son idénticos. Si utiliza reflector, se puede ver que se compilan a la misma IL:

.field private string[] files 
3

Producen exactamente lo mismo, solo dos formas alternativas de declaración.

2

Ambos son la misma

Dim files() As String = Directory.GetFiles("C:/") 

Dim files As String() = Directory.GetFiles("C:/") 

Ambos declarar una matriz y almacenar todos los nombres de los archivos en C: \ directorio

0

En realidad, hay una diferencia. Ejemplo explica todo:

Class Demo 
    Property X() As Byte 
    Property Y As Byte() 
End Class 

... 

Sub DemoCode() 
    Dim d As New Demo() 
    d.X = New Byte() {} ' !!! invalid 
    d.Y = New Byte() {} ' valid 
End Sub 
Cuestiones relacionadas