c++ - C 文件的 Eclipse CDT 索引器结果与 C++ 文件不同

标签 c++ c indexing eclipse-cdt

我正在使用 Eclipse 2018-12 和最新的 CDT。编辑器出现奇怪的索引问题。鉴于以下。如果源文件具有“.c”扩展名,索引器会提示无法解析类型“bool”和“false”。如果文件具有“*.cpp”扩展名,则解析类型。

在这两种情况下,项目都将构建并可以调试。

不确定这是否重要,但我正在使用 CMake 3.13 生成 Eclipse 项目文件,尽管我尝试手动调整项目设置无济于事。

#include <stdbool.h>
void main(void)
{
    bool success = false;
}

我有一个 C 项目,但我的单元测试使用的是 GTest,并且是项目中唯一的 .cpp 文件。所有 .c 文件都表现出这种行为。

最佳答案

在 Eclipse 论坛中找到类似的帖子。一致认为这可能是索引器/编辑器代码中的错误。

但是有一个变通解决方案。如果您在项目属性 -> C/C++ 常规 -> 语言映射中有一个包含 .c 和 .cpp 文件的项目,请将“C 源文件”的映射添加到“GNU C++”语言。

由于我的构建文件是由 CMake 生成的,我认为这不会影响 Eclipse 构建/调试我的代码的方式。

关于c++ - C 文件的 Eclipse CDT 索引器结果与 C++ 文件不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54834858/

相关文章:

c++ - Visual Studio 2015无法产生在Windows XP上成功注册的ATL Dll

c - 返回指向自动变量的指针的函数

当使用表时,jQuery 仅返回第一个元素的索引

sql-server - 在外键上创建聚集索引经常连接到另一个表

c++ - 在给定螺旋位置的二维数组中查找元素

c++ - 具有相同功能的继承 : How can I make an array of different classes,,在 C++ 中做不同的事情?

复杂格式说明符 C

c - 如何打印出扫描结构以正确归档? (C)

用于极慢查询的 MySQL 索引

c++ - 在声明期间初始化引用