Eclipse CDT 中的图钉图标装饰意味着什么?

问题描述 投票:0回答:3

每当我从构建中排除 .h 文件并稍后重新包含它时,项目资源管理器中的 .h 文件的图标将有一个图钉装饰。我查看了 CDT 用户指南,但它不在他们的图标列表上。图钉是什么意思?

eclipse-cdt
3个回答
2
投票

您可能发现了 CDT 中的一个小错误!

您在原始问题中没有包含图像,因此我建议您看到的图标叠加层不是图钉,而是指示该元素(包含文件)的属性已被修改的指示器(它看起来像一个小扳手)。当您排除该元素时,它会显示一个指示排除的覆盖层,当您重新包含该元素时,您会看到扳手覆盖层。这是错误,因为您已将元素返回到其未修改的状态。在这种情况下不应显示扳手覆盖层。

如果您尝试排除 C 源文件,您将看到排除覆盖,当您重新包含 C 源文件时,排除覆盖将被删除,仅显示原始图标(无覆盖)。

(我使用 CDT 7.0.0 尝试过)


0
投票

我想尝试不同版本的 cpp 文件。通过互换它们,新包含的文件的图标中有一个小扳手。这似乎是一个小错误。

解决方案:

创建新文件,复制内容,删除旧文件,将新文件重命名为旧文件的名称,完成。


0
投票

扳手图标⟹自定义设置

这个图标是很久以前在 2009 年引入的 — 参见 Bug #298540

每当某些资源的本地设置覆盖继承的全局或项目默认值时,它就会显示。不幸的是,这并没有揭示真正的原因,因为树中的任何对象都可以有很多设置 - 属性对话框(右键单击>“属性”)很复杂并且有多个选项卡。

  • 您可能添加了本地
    #define
    符号“C++常规>路径和符号”
  • 您可能添加了特定的包含或包含目录
  • 如果您使用»非托管构建«(即您正在调用外部makefile),并且您正在使用“发现”,那么CDB构建输出解析器可能会捕获编译器调用该资源并推断出包含或其他超出一般默认值的设置。
  • 仅选择自定义编码或添加特定语言映射不会似乎会导致显示

如果单击该资源“属性”对话框的所有相关选项卡上的“恢复默认值”按钮,扳手图标就会消失。

© www.soinside.com 2019 - 2024. All rights reserved.