Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 有没有办法生成未使用的编译器警告?_C#_.net_Visual Studio 2008 - Fatal编程技术网

C# 有没有办法生成未使用的编译器警告?

C# 有没有办法生成未使用的编译器警告?,c#,.net,visual-studio-2008,C#,.net,Visual Studio 2008,有没有办法在VS2008中为未使用的using语句生成警告?我知道有Edit->Intellisense->Organize Usings->Remove unusings,但如果这是一个编译时警告就好了。否,因为这不是编译器问题,所以不能生成编译器警告。编译器警告仅在发现死代码点(如空catch语句)时生成。或未使用的变量。基本上是任何可能导致运行时问题的东西。由于使用语句与运行时无关,而且更像是文本文件的样式问题,因此它们不会生成警告 但是您可以使用诸如reSharper之类的工具来提醒您未

有没有办法在VS2008中为未使用的using语句生成警告?我知道有
Edit->Intellisense->Organize Usings->Remove unusings
,但如果这是一个编译时警告就好了。

否,因为这不是编译器问题,所以不能生成编译器警告。编译器警告仅在发现死代码点(如空catch语句)时生成。或未使用的变量。基本上是任何可能导致运行时问题的东西。由于使用语句与运行时无关,而且更像是文本文件的样式问题,因此它们不会生成警告


但是您可以使用诸如reSharper之类的工具来提醒您未使用的using语句。

如果您使用,默认情况下,它将以不同的颜色显示未使用的using(作为错误分析侧栏中的警告),如果您突出显示它们,您可以将其更改为显示为错误。不幸的是,它不会阻止它编译,但它确实会提醒您它们没有被使用。

我想这不是编译器警告,因为它绝对没有任何后果…

我们尝试为所讨论的代码几乎肯定已被破坏、误导或无用的情况创建警告。此外,由于许多人在编译时启用了“警告为错误”,我们有一个很高的标准;引入虚假或多余的警告是不好的

假设您在编译时默认打开了“警告为错误”。假设我们实现了您想要的功能。您启动了一个新项目,我们为您生成:

using System;
using System.Text;
using System.Linq;

class Program
{
  static void Main(string[] arguments)
  {
  }
}

我们立即告诉您,您的程序中有一个错误,因为没有任何“使用”是必要的!这是一种非常糟糕的用户体验。IDE将这些“使用”放在那里是为了方便您,这样您就不必自己定义它们了。您提出的功能将使它从一种方便变成一种麻烦。

vs2008:43次使用。visual studio-2008:3447使用。你认为这里哪一个更合适?为什么社区不设置为用更合适的标记替换vs2008?@Joel:我一点也听不到这个评论。@Tor:看看Joel编辑的内容。ReSharper是.net开发人员使用的常用工具吗?是的,ReSharper是常用的。我拒绝在没有它的情况下在VS中开发。我昨天在加拿大科技日,每个演示者都安装了它。这似乎更像是对IDE的一种批评,当IDE不可能知道我想要什么时,为我填充东西,而不是批评将未使用的using设置为错误。@jackmott:IDE不可能知道您想要什么,但它肯定可以做出很好的猜测。我不打算在这里批评IDE团队。未使用会显著延长构建时间。