从 Visual Studio 2010 (C++) 的错误列表中删除重复项

Posted

技术标签:

【中文标题】从 Visual Studio 2010 (C++) 的错误列表中删除重复项【英文标题】:Remove duplicates from error list in Visual Studio 2010 (C++) 【发布时间】:2011-03-16 18:20:13 【问题描述】:

有没有办法从 Visual Studio 2010 的错误列表中删除重复的错误?

当我编译我的(旧版)C++ 代码时,我在头文件中多次收到相同的错误,每次将它导入到不同的文件中。这确实是多次报告相同的错误。有没有办法只查看错误列表中的不同错误?

谢谢。

【问题讨论】:

这毫无意义。修复代码,而不是错误列表。 @Hans Passant 我打算这样做,但我正在使用错误列表来识别并优先考虑修复代码的位置。这不是必需的,但它会很有用,因此我可以快速查看问题出在哪里。 只有一个优先级,即列表中的第一个错误。从那里开始,错误消息的保真度迅速下降。尝试修复错误 #5 很可能会让您陷入困境,这很可能是由较早的语法错误引起的。 【参考方案1】:

我不会使用错误列表来确定数百/数千个错误的优先级,我会使用输出窗口。

原因:

输出窗口在实际上下文中显示所有错误。错误列表(或与此相关的 TFS 构建日志)通常会以混乱的顺序显示错误,或者完全错过错误(例如,如果构建后步骤失败,您可能会在错误中报告“0 个错误 0 个警告”当输出窗口报告“5 个项目成功构建,2 个失败”时列出。在我的书中,构建失败的项目是一个错误,而且绝对是不应该的不要被悄悄扫到地毯下!结论:错误列表在生产环境中使用太不可靠了)

您可以将输出窗口文本保存/复制到一个新的文本文件中,只过滤掉错误,对它们进行排序并非常轻松地删除重复项(通过任意数量的正则表达式、命令行、GUI、插件或宏方法)。如果您打算进行构建,然后筛选结果以确定修复的优先级,那么这样做的费用很容易在您后续“筛选”工作中节省的时间中得到回报。

另一方面,考虑不要费心“优先考虑”。通常,在头文件中重复出现的错误将是最微不足道的修复程序之一,因此您可以花几个小时消除它们以大大减少构建中的“垃圾邮件”,然后切入追逐更困难的问题。这通常比试图将它们过滤掉以便以后处理更省时。

【讨论】:

【参考方案2】:

就像其他人所说的那样,修复错误。

当我使用 dable i 这个 c++ 词时,有时你会破坏你的项目并得到无数错误,我会做以下事情。

1) 构建项目。 2) 查找它报告的第一个错误。 3) 修复该错误。 4) 转到 1。

这样做的原因是,有时 1 个错误会引发很多其他错误,因此按照报告的顺序修复它们是明智的。

【讨论】:

以上是关于从 Visual Studio 2010 (C++) 的错误列表中删除重复项的主要内容,如果未能解决你的问题,请参考以下文章

从 Visual Studio 2010 (C++) 的错误列表中删除重复项

使用 Visual Studio 2010 将 libexif 编译为静态库 - 然后从 Visual C++ 项目链接

将 C++ 应用程序从 Visual Studio 2010 升级到 2013 时出现链接器错误。

从 VC6 到 Visual Studio 2010 的 C++ 序列化

无法在 Visual Studio 2010 中构建 C++ 项目

在 Visual Studio 2010 (C++) 中集成 MATLAB 代码