我将Eclipse用作C++项目的IDE,我很乐意告诉我定义给定符号的位置以及函数的参数。

但是,有一个陷阱:我还使用Lazy C++这个工具,它使用一个源文件并生成.h和.cpp文件。这些.lzz文件看起来像标题,但是此工具支持一些非常温和的语法好处,例如将嵌套的命名空间合并为限定名称。此外,它还具有一些特殊标记,可以特别告诉工具将内容放置在何处(在 header 或源文件中)。

所以我典型的SourceFile.lzz看起来像这样:

$hdr
#include <iosfwd>
#include "ProjectA/BaseClass.h"
$end

$src
#include <iostream>
#include "ProjectB/OtherClass.h"
$end

// Forward declarations
namespace BigScope::ProjectB
{
  class OtherClass;
}

namespace BigScope::ProjectA
{
  class MyClass : public ProjectA::BaseClass
  {
    void SomeMethod(const ProjectB::OtherClass& Foo) { }
  }
}

如您所见,它仍然是可识别的C++,但还有一些其他功能。

由于某些原因,CDT的索引器似乎不想索引任何东西,而且我也不知道怎么了。在“索引器 View ”中,它显示了一棵空树,但告诉我它有大约15000个符号和更多内容,但似乎无法访问。

因此,这是我的问题:如何使索引器输出有关其正在执行的操作的更多信息以及为什么这样做会失败,并且除了通过GUI可访问的选项之外,我还能做更多的调整吗?

谢谢,

卡尔

最佳答案

我想像其中之一:

  • Eclipse不想在树中显示非C++资源(我对此有疑问)
  • 您没有启用“首选项> C / C++>索引器>为所有文件编制索引”。
  • 您想使用“Full C / C++ Indexer”而不是“Fast C / C++ Indexer”
  • 10-08 10:50