在CodeAbbey上看一些编程挑战的解决方案,我注意到许多C#解决方案在代码开头实现了以下内容:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
除了System
之外,似乎没有使用这些语句。它们甚至可以用于简单的循环程序。 Ideone示例:1 2 3
这些陈述实际上是否需要代码才能运行,或者它们是否习惯性地添加?
答案 0 :(得分:1)
IDE(如Visual Studio)通常会在新文件的顶部自动生成using
语句列表。
如果不使用代码文件,则应清除这些代码文件。但是,我假设编译器在编译期间将摆脱它们。
答案 1 :(得分:1)
如果在Visual Studio 2013中,使用.NET 4.5项目,添加新项,类,则可以得到:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace (yournamespace)
{
class Class1
{
}
}
包括using
。如果您不需要它们,可以删除它们(或者您可以更轻松地右键单击,组织使用,删除未使用的使用)
如果您发现自己需要它们,则右键单击错误 Resolve ,使用(某些)非常容易。
请注意,有一个例外:扩展方法。您无法使用扩展方法“自动”解析,使用(某些)。出于这个原因,删除using System.Linq
可能会很痛苦,因为如果你使用LINQ,你必须“手动”重新添加它(通过输入using System.Linq
)。
答案 2 :(得分:1)
不使用顶部的冗余using
指令。但是,它们完全无害,前提是由于某些其他原因在项目中引用了相应的DLL。
冗余using
指令通常来自代码模板。许多编程商店都会设置这些模板供内部使用,以便源文件的顶部部分看起来一致。
删除冗余using
指令可以在需要从模块中删除引用的DLL时简化代码维护。在这种情况下,using
指令即使在未使用时也会触发编译错误,因此我建议删除它们。使用可用于using
指令自动维护的工具,可以很容易地在程序的顶部维护最小的using
集,因此删除未使用的指令不需要大量工作。
答案 3 :(得分:0)
在项目中创建新的类文件时,它们通常会作为模板的一部分添加。您可以安全地删除不使用的那些。一些工具(ReSharper,Roslyn分析器等)将向您显示未使用的using
语句,并提供删除它们。