在eclipse中没有解析Sqlite3结构

时间:2013-12-03 09:01:34

标签: c eclipse eclipse-cdt

我是Eclipse中的c / c ++新手,试图使用sqlite合并为MATLAB编写一些sqlite例程。

我遇到了这个问题,日食似乎缺少基本sqlite3类型的东西。 我在以sqlite3*作为输入的所有函数上得到“无效参数”错误。

E.g。在sqlite3_close我正在

Invalid arguments
Candidates are: int sqlite3_close(*)

而适当的原型是

int sqlite3_close(sqlite3*)

所有sqlite3_stmt类型都会出现同样的问题。 我已经包含sqlite3.h,它位于同一目录中,最后但并非最不重要的是,代码编译并运行得很好。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

从sqlite3代码,第12450行

** The "sqlite3_stmt" structure pointer that is returned by sqlite3_prepare()
** is really a pointer to an instance of this structure.


 struct Vdbe {
    /*struct definition*/
}

也就是说,sqlite3_stmt是forward declaration,它阻止用户创建sqlite3_stmt结构,但是使用sqlite3函数。

为了让Eclipse CDT能够识别sqlite3_stmt,如果您没有使用它来编译,可以将它作为符号添加到Eclipse项目属性中。

由于我不是,我所拥有的是将sqlite3_stmt定义为Vdbe。