0

来自不同的开发环境(主要是 Java),我试图与我习惯的习惯进行类比。

我正在使用 Visual Studio 2005 中的 C++ 项目,该项目在更改后需要大约 10 分钟才能编译。奇怪的是,如果我犯了一个小的语法错误,我需要等待几分钟才能在运行整个项目构建时从编译器那里获得反馈。

Eclipse 给了我一个习惯,即如果我做一些小改动,我会立即得到一个编译器错误,并带有一个显示错误的下划线。似乎足够合理,VS 应该能够做到这一点。

替代文字

这是我可以在 VS 中启用的功能,还是我需要一个外部插件?

4

7 回答 7

6

您要求的功能将在 Visual Studio 2010 中可用。这里是可用功能详细信息的详细链接

现在,正如其他人所建议的那样,您可以使用 Visual Assist,它可以提供一点帮助。

这些被称为 Squiggles BTW。

于 2009-08-03T09:14:51.360 回答
4

您可以尝试以下方法:

  • 安装一个像 Visual Assist 这样的插件:它会通知你大部分错误;
  • 如果您想检查自己,请使用 Ctrl-F7 编译您当前正在编辑的文件 - 在这种情况下,您无需等待所有项目编译。如果您正在编辑头文件,请编译其中包含的 .cpp 文件之一。
于 2009-08-03T09:00:02.020 回答
2

是的,C++ 因其构建时间而臭名昭著。Visual Studio 无法执行动态语法检查(在 C++ 的情况下),但您可以安装Visual Assist来帮助解决:

替代文字
(来源:wholetomato.com

于 2009-08-03T09:02:39.893 回答
1

10 分钟是相当长的等待时间,你每次都在做完整的构建吗?您可以使用很多技术来加快速度,例如使用预编译头文件。我尝试组织我的代码,以便我在代码文件而不是标题中进行所有重大更改,然后只构建该文件(ctrl F7)以检查错误。

于 2009-08-03T09:01:56.650 回答
1

您有一个“错误列表窗口”,它将在编译后列出您的错误和警告。如果您双击错误,它将直接转到源代码中有问题的代码行。它在菜单显示,子菜单“其他窗口”中。

请记住,编译 C++ 是比编译 Java 困难得多的任务,这解释了时间的增加。

Visual Assist X 非常酷,但只检测拼写错误。

它不能“即时”编译,这解释了您要求的功能是不可能的。如果你有一台多核机器,你可以启用并行构建。

工具 -> 选项 -> 项目和解决方案 -> 生成和执行 -> 最大并行编译数。

于 2009-08-03T09:03:17.783 回答
0

Resharper for C# 有它。但是对于 c++,也许视觉辅助 x ?

于 2009-08-03T09:00:30.210 回答
0

Eclipse 给了我一个习惯,即如果我做一些小改动,我会立即得到一个编译器错误,并带有一个显示错误的下划线。似乎足够合理,VS 应该能够做到这一点。

Eclipse 已经实现了自己的Java 编译器,并在您每次键入单词时在后台运行该编译器,以便能够检测错误并加下划线。我不知道我是否会称之为“合理”。;)

实现该功能需要大量工作,即使是使用 Java 这样的简单语言也是如此。在 C++ 中,正如您所发现的,编译可能需要几分钟,但更难。

Visual Studio 2010 将实现此功能(同样,使用单独的编译器,该编译器被大量精简,并且并不总是提供正确的结果——这是确保它足够快以进行动态编译所必需的折衷方案)。

于 2009-08-03T10:48:09.887 回答