我是否需要在我的C ++应用程序中包装SQLite(http://www.sqlite.org/)库调用:
extern "C" {
//Wrapping SQLite C header
#include "sqlite3.h"
// Some example function definitions
int sqlite3_open(const char *filename,sqlite3 **ppDb);
void sqlite3_free(void*);
int sqlite3_close(sqlite3*);
}
或者我可以直接访问该库(大多数示例在网站上显示)?也很想知道正确答案背后的原因。
答案 0 :(得分:2)
sqlite3.h
已包含extern "C"
包装器。来自消息来源:
/*
** Make sure we can call this stuff from C++.
*/
#ifdef __cplusplus
extern "C" {
#endif
…
#ifdef __cplusplus
} /* end of the 'extern "C"' block */
#endif
因此,您不需要自己包装。