我将 sqlite3.c sqlite3.h 导入到我的项目中 - 但我在编译它时遇到了问题。
错误:
1>c:\...\storage_manager.h(7) : error C2079: 'storage_manager::db' uses undefined struct 'sqlite3'
1>storage_manager.cpp
1>c:\...\storage_manager.h(7) : error C2079: 'storage_manager::db' uses undefined struct 'sqlite3'
1>ui_manager.cpp
1>c:\...\storage_manager.h(7) : error C2079: 'storage_manager::db' uses undefined struct 'sqlite3'
代码:
#pragma once
#include "sqlite3.h"
class storage_manager
{
sqlite3 db;
sqlite3** db_pp;
public:
void open()
{
sqlite3_open("data.db", db_pp);
}
};
最佳答案
我刚刚注意到您尝试创建一个名为 db 的 sqlite3 类型的堆栈变量。那行不通,因为 sqlite3 是一个句柄,您只能有一个指针变量。然后,您需要将该指针变量的地址传递给 sqlite3_open。
@Neil Butterworth 比我早发现它 :-)
关于c++ - VC9下SQLite3的麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/787481/