gpt4 book ai didi

Eclipse 索引 - 各种选项有什么作用

转载 作者:行者123 更新时间:2023-12-01 02:00:43 24 4
gpt4 key购买 nike

当你right-click > index在一个项目上,有几个选项:

  • 重建
  • 刷新所有文件
  • 使用修改后的文件更新
  • 重新解决 Unresolved 包括

  • 我每次都在进行重建,但现在我正在做一个巨大的项目,而且负担不起;当我修改文件时,无论是 .cpp 还是 .h,我都需要知道要执行哪个“索引”操作。

    对于每个“索引”选项:
  • 它究竟是做什么的?
  • 成本是多少(相对内存、CPU 时间)?

  • 来自 Eclipse 的文档会很有帮助,但已经搜索过但没有找到。

    最佳答案

    重建 只能在整个项目上执行。它丢弃项目的整个索引并从头开始重建它,为项目中的每个文件编制索引。

    由于它从丢弃前一个索引开始,因此取消重建将导致空索引或部分构建索引。

    其他操作可以在整个项目上执行,也可以在项目中的文件夹或文件(或文件夹/文件组)上执行。

    它们都遍历选择中的文件,并更新索引中的部分或全部文件。与 Rebuild 不同,它们不是从清除索引开始的,因此取消它们相对安全。

    刷新所有文件更新选择中的所有文件。如果在项目上调用,最终结果与 Rebuild 相当。

    使用修改后的文件更新 仅更新选择中自上次在索引中更新后发生更改的文件,由它们的时间戳和内容的哈希确定。

    重新解决 Unresolved 包括 仅更新选择中配置信息(例如指定的包含路径)已更改的那些文件,并且该更改导致以前 Unresolved inclusion 现在已解决。

    性能特征可能会有很大差异,具体取决于项目规模和您正在运行的机器类型。我从事一个非常大的项目(数百万行),其中 重建 在相对现代的桌面上可能需要 20-30 分钟。该操作通常受 CPU 限制,但索引器当前是单线程的,因此它只会使用一个 CPU 内核。

    最后,我想再次提一下我在对问题的评论中所说的:如果您将索引配置为在 Preferences | C/C++ | Indexer 中自动更新,您根本不需要手动调用这些命令,至少在理论上是这样。在实践中,我偶尔会发现 重建 是必要的(比如每隔几周一次),尤其是在配置更改之后(例如添加新的包含路径)。

    来源:本mailing list post ,阅读 Action 的实现,体验CDT的使用。

    关于Eclipse 索引 - 各种选项有什么作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36778429/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com