簡體   English   中英

System.Net和沒有System.Net之間的區別

[英]The difference between with System.Net and without System.Net

添加System.Net什么區別:

 CookieContainer globalcontainer = new System.Net.CookieContainer();

並在聲明中使用沒有命名空間的類

 CookieContainer globalcontainer = new CookieContainer();

哪個效率更高?

兩者都沒有更高效,一個是明確指定命名空間,另一個是隱式。

在.cs文件的頂部,using指令導入名稱空間,這意味着這些名稱空間中的類型不需要在代碼中識別完全限定的路徑

例如

List<T>出現在System.Collections.Generic ......沒有此命名空間的using指令,您必須使用完全限定名稱:

System.Collections.Generic.List<int> someList;

而它,你沒有

using System.Collections.Generic;

List<int> someList;

有時會出現名稱空間沖突 - 想象一下以下情況:

Some.Namespace.Task
Some.Othernamespace.Task

如果導入兩個名稱空間:

using Some.Namespace;
using Some.Othernamespace;

Task someTask; // <--- this line will cause a compile time error

編譯器不知道你想要哪個Task ,來自Some.Namespace的那個或來自Some.Othernamespace的那個 - 在這種情況下你需要是特定的並提供完整的命名空間(或使用別名)

希望這可以幫助

閱讀所有關於名稱空間的內容:

http://msdn.microsoft.com/en-gb/library/z2kcy19k(v=vs.80).aspx

在運行時,兩者通常是相同的。

為了便於閱讀,我通常不喜歡在同一個語句中使用命名空間(將它放在文件頂部的using指令中),因為它通常可以節省空間,使我的行不會太長,這無疑是一個小小的好處。

這些是我包含命名空間的時候:

  • 當我知道類名可能被誤解時,有時會在.NET中的不同命名空間中使用類型,我希望代碼的讀者能夠更快地得到我的意思

  • 當它是來自此命名空間的唯一調用時,有時我會明確地包含命名空間。

  • 如果我正在導入包含相同類型的多個名稱空間。 這一點很明顯。

所以,答案,無論好壞,這聽起來都是“取決於”。 無論是什么使得代碼在更短的時間內更具可讀性。

http://gurustop.net

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM