我有一個VB文件,導入System.IO,但只使用它是幾個地方。我的同事和我想知道,如果我們只是明確使用System.IO,而不是導入它,我們是否需要它(IE,System.IO.MemoryStream)會有小的性能提升。顯式使用System.IO而不是導入它會有性能好處嗎?
2
A
回答
11
不,沒有區別。無論哪種情況,編譯器都會產生完全相同的IL。
您可以通過兩種方式編譯來證明它,然後使用Reflector來拆卸組件並觀察生成的IL。
3
Robert是完全正確的。我會補充一點,導入命名空間的目的是爲了避免輸入你打算使用的每個類的完全限定的名字(VB.NET是Imports
; C#是using
)。編譯後的IL代碼仍然使用完全限定名稱,因此導入名稱空間僅用於簡化作爲開發人員的一些工作。
導入命名空間的一個缺點是,如果有人給你使用代碼,但不與你共享其代碼文件的頂部與命名空間導入,你必須找出自己要添加的命名空間。
相關問題
- 1. 使用calloc()而不是malloc()和memset()有什麼好處嗎?
- 2. 使用Spring DataAccessExceptions而不是JPA PersistenceExceptions有什麼好處嗎?
- 3. 有沒有使用SystemInterface.IO而不是System.IO的CSV編寫器NuGet?
- 4. Java:使用完整類路徑而不是「導入」有什麼好處?
- 5. 使用* .component.scss而不是將其寫入styles.scss有什麼好處?
- 6. 導入模塊(但不使用它)是否會降低Python的性能?
- 7. 使用MDF SQL Server文件而不是「數據庫」會有性能下降嗎?
- 8. 使用標籤與CFSCRIPT是否有明顯的性能或可讀性好處?
- 9. 使用SqlCommand.ExecuteNonQuery而不是...的好處
- 10. 在php中使用對象有任何性能好處嗎?
- 11. 不使用float的好處是:對嗎?
- 12. 使用Doctrine使用DQL而不是SQL有什麼好處?
- 13. 使用cURL而不是Fiddler會帶來什麼好處?
- 14. 使用@ font-face或cufon而不是圖像會更好嗎?
- 15. 使用style.width.px而不是ngStyles或外部樣式定義它的好處
- 16. 對類變量使用默認值而不是在c#中初始化它會有什麼性能影響嗎?
- 17. 這是使用多態性誤導,因此設計不好嗎?
- 18. 什麼好處會有使用監聽器的服務,而不是服務
- 19. 導入「不相關」的dll是否會導致性能下降?
- 20. 使用值,而不是顯示它
- 21. 使用redis/nosql而不是postgres進行bug跟蹤應用會有什麼好處嗎?
- 22. 使用分部類而不是抽象類有什麼好處?
- 23. 使用Flux而不是for循環,有什麼好處?
- 24. 使用名稱而不是版本號有什麼好處?
- 25. 使用ORDBMS代替RDBMS有什麼好處,而不是JPA
- 26. PHP:使用echo而不是print有什麼好處?
- 27. 使用BIO_printf()而不是printf()有什麼好處?
- 28. 在jQuery中使用live而不是綁定會對性能產生影響嗎?
- 29. 使用虛擬值會使模型的性能更好嗎?
- 30. 儘管它可能對可讀性有好處,但它正在使用「基礎」錯誤練習嗎?
關於共享代碼的好處。我發現這種情況一直髮生(特別是在本網站上),然後你必須去谷歌的所有類型找出他們在哪個名稱空間。 – 2010-08-06 19:26:39