2010-02-11 10 views
7

In questo codice:Cosa c'è di diverso tra i file Dim() Come file String e Dim come String()?

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

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

c'è una differenza tra le dichiarazioni?

+2

Ai tempi in cui VB non ha avuto costruttori con parametri, i file fioco come String() era evidente. Ma ora con i costruttori è probabilmente preferibile usare Dim files() come String per evitare confusione. – Josh

risposta

5

I due sono identici. Se si utilizza Reflector, si può vedere che sono compilati allo stesso IL:

.field private string[] files 
3

Esse producono esattamente la stessa cosa - solo due forme alternative di dichiarazione.

2

Entrambi sono lo stesso

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

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

Entrambi saranno dichiarare un array e memorizzare tutti i nomi dei file in C: \ directory

0

In realtà, c'è una differenza. Esempio spiega tutto:

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 
Problemi correlati