2015-10-14 49 views
-2

在那裏與任何性能問題與編碼樣式編碼樣式1 2有沒有像第一進口System.IO然後使用寫代碼之間有什麼區別的FileInfo

編碼風格1:(這裏先導入語句,然後代碼) 進口的System.IO

Dim Files() As FileInfo = DirInfo.GetFiles(FileMask(j), IO.SearchOption.AllDirectories) 

編碼風格2:(這裏直接把System.IO.FileInfo(.....))。

Dim Files() As System.IO.FileInfo = DirInfo.GetFiles(FileMask(j), IO.SearchOption.AllDirectories) 

如果是,那麼哪一個更好,爲什麼?

+0

如何在此上下文中定義單詞「better」? –

回答

2

如果你看一下這個代碼

Dim Files() = Directory.GetFiles("d:\temp", "*.txt") 

IL_0000: ldstr  "d:\temp" 
IL_0005: ldstr  "*.txt" 
IL_000A: call  System.IO.Directory.GetFiles 
IL_000F: pop   
IL_0010: ret   

和IL該代碼

Dim Files() = System.IO.Directory.GetFiles("d:\temp", "*.txt") 

IL_0000: ldstr  "d:\temp" 
IL_0005: ldstr  "*.txt" 
IL_000A: call  System.IO.Directory.GetFiles 
IL_000F: pop   
IL_0010: ret   

你可以看到,有沒有任何區別發出發出的IL。編譯器總是使用類的完全限定名,所以,在這些簡單的例子中,程序員可以方便地避免大量的重複輸入。

但是,如果您有具有相同名稱但名稱空間不同的類,則缺少寫入特定名稱空間可能具有一定的重要性。在這種情況下,您必須使用適當的名稱空間或使用別名來消除這兩個類之間的歧義,請參閱MSDN page for Imports statement上的更多信息

相關問題