例如,我很少需要:

using System.Text;

但它总是默认存在的。如果代码中包含不必要的using指令,我假设应用程序将使用更多内存。但是还有什么我应该注意的吗?

同样,如果同一个using指令只在一个文件中使用,而在大多数/所有文件中使用,会有任何区别吗?


编辑:请注意,这个问题不是关于不相关的概念,称为using语句,旨在帮助管理资源,确保当一个对象超出作用域时,它的IDisposable。方法被调用。参见c#中“using”的用法。


当前回答

如果您像名称空间中的(未使用的)类那样调用类,则可能会发生名称冲突。在系统的情况下。文本,如果定义了一个名为“Encoder”的类,就会遇到问题。

无论如何,这通常是一个小问题,并由编译器检测。

其他回答

这主要是个人喜好。我自己清理它们(ReSharper在告诉我什么时候有不需要的using语句方面做得很好)。

有人可能会说,这可能会减少编译时间,但随着计算机和编译器的速度,这不会产生任何可察觉的影响。

不要忘记编译器在构建项目时做了很多工作来优化所有内容。使用that在很多地方都被使用,或者1在编译后不应该做不同的事情。

using语句不会影响性能,因为它只是限定标识符名称的一个助手。因此,如果你使用System.IO,你不必输入System.IO.Path.Combine(…),你可以简单地输入Path.Combine(…)。

当程序运行时,它不会改变任何东西。所需的一切都是按需装载的。所以即使你有using语句,除非你在命名空间/程序集中实际使用了一个类型,否则与using语句相关的程序集不会被加载。

主要是为了个人喜好。

它们只是作为一种捷径。例如,你必须这样写: 系统。Int32每次如果你没有一个使用系统;在上面。

删除未使用的元素只会使代码看起来更干净。