繁体   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