KDevelop分析器配置缺少头文件 我将在Clinux上使用CMAX配置C++项目的KDevelop(5.2.1)。在KDevelop中以及在命令行中构建我的项目是可行的,但在代码完成方面我遇到了几个解析器问题:
开始时,我的C++标准库头包括KDevelop分析器配置缺少头文件 我将在Clinux上使用CMAX配置C++项目的KDevelop(5.2.1)。在KDevelop中以及在命令行中构建我的项目是可行的,但在代码完成方面我遇到了几个解析器问题:,c++,kdevelop,C++,Kdevelop,开始时,我的C++标准库头包括 #include <cstdlib> 对于C头,它看起来相当简单。在C++的情况下,这看起来很糟糕,因为它看起来有时会发生变化。 是否有更可靠和独立于项目的方式来执行此配置 解析器会丢失本地头文件中的一些声明,这些声明依赖于已配置的include目录列表。例如,include/quadmartrix.h中声明了quadmartrix类。在代码中 #include <cstdlib> #include "quadmatrix.h" Q
#include <cstdlib>
对于C头,它看起来相当简单。在C++的情况下,这看起来很糟糕,因为它看起来有时会发生变化。
是否有更可靠和独立于项目的方式来执行此配置
include/quadmartrix.h
中声明了quadmartrix
类。在代码中
#include <cstdlib>
#include "quadmatrix.h"
QuadMatrix::QuadMatrix(int dimSize)
: dimSize(dimSize)
{
data = (int*) std::malloc(sizeof(int) * 2 * dimSize);
}
#包括
#包括“quadmartrix.h”
QuadMatrix::QuadMatrix(int dimSize)
:dimSize(dimSize)
{
数据=(int*)标准::malloc(sizeof(int)*2*dimSize);
}
quadmartrix
是在配置系统包含目录时解析器的“未声明标识符”,如图1所示。如果我重置此配置,则cstdlib
和std::malloc
未知,但quadmartrix
最终声明
我还试图将projectinclude目录添加到配置中,但它没有改变任何东西,而且一开始也不是必需的
有趣的是,编辑建议我在这两种情况下都添加#include
,但这也不能解决问题GCC
而不是Clang
,解决了我的问题,并使我的任何include目录配置都变得不必要。因此,我猜KDevelop以错误的方式使用了clang解析器(5.0)。您可能需要发布“编辑:”部分作为问题的答案。
#include <cstdlib>
#include "quadmatrix.h"
QuadMatrix::QuadMatrix(int dimSize)
: dimSize(dimSize)
{
data = (int*) std::malloc(sizeof(int) * 2 * dimSize);
}