每当我从构建中排除 .h 文件并稍后重新包含它时,项目资源管理器中的 .h 文件的图标将有一个图钉装饰。我查看了 CDT 用户指南,但它不在他们的图标列表上。图钉是什么意思?
您可能发现了 CDT 中的一个小错误!
您在原始问题中没有包含图像,因此我建议您看到的图标叠加层不是图钉,而是指示该元素(包含文件)的属性已被修改的指示器(它看起来像一个小扳手)。当您排除该元素时,它会显示一个指示排除的覆盖层,当您重新包含该元素时,您会看到扳手覆盖层。这是错误,因为您已将元素返回到其未修改的状态。在这种情况下不应显示扳手覆盖层。
如果您尝试排除 C 源文件,您将看到排除覆盖,当您重新包含 C 源文件时,排除覆盖将被删除,仅显示原始图标(无覆盖)。
(我使用 CDT 7.0.0 尝试过)
我想尝试不同版本的 cpp 文件。通过互换它们,新包含的文件的图标中有一个小扳手。这似乎是一个小错误。
解决方案:
创建新文件,复制内容,删除旧文件,将新文件重命名为旧文件的名称,完成。
这个图标是很久以前在 2009 年引入的 — 参见 Bug #298540
每当某些资源的本地设置覆盖继承的全局或项目默认值时,它就会显示。不幸的是,这并没有揭示真正的原因,因为树中的任何对象都可以有很多设置 - 属性对话框(右键单击>“属性”)很复杂并且有多个选项卡。
#define
符号“C++常规>路径和符号”如果单击该资源“属性”对话框的所有相关选项卡上的“恢复默认值”按钮,扳手图标就会消失。