昨天闲来无事,和同事一起编译sqlite3pp开源库,由于资料较少,其中各种坑,今天记录一下,避免和我们一样的新手们少走弯路;
1. 首先是安装sqlite3的小型数据库,可在官网上下载,网上安装教程较多,可自行解决;
2.安装完之后,设置环境变量;
3.将
文章图片
这个文件转换成sqlite3.lib,具体步骤如下:
【关于sqlite3pp C++API封装sqlite3编译问题】a.首先打开vs的命令行控制台;
(记住是vs的控制台,不是cmd系统控制台)
文章图片
b.在控制台执行转换命令;
文章图片
4.现在到这一步,C++调用sqlite3数据库的准备工作已经完成,网上有相关demo及配置,使用原生态接口,已经可以访问,并增删改查;
5.因为原生态的接口使用C语言封装的,复用性比较差,今天主要给大家介绍一下sqlite3pp库,是一个C++封装sqlite3的API,功能还算强大;
6.可在github上下载sqlite3pp开源库,会得到一下文件,我们只需要src和headeronly_src其中一个文佳加入我们自己的工程即可;
文章图片
7.这里需要注意,我使用vs2008编译工程时,遇到了很多语法错误;(这里坑了不少时间),最后发现sqlite3pp里面用到了C++11的新特性语法,可能vs2008编译器不识别,所以,我换成vs2013,问题瞬间变少,只有下面两个错误,看了一下这个类是实现一个不可复制的类,复制构造函数和复制赋值操作符注掉即可:
文章图片
8.完美编译,任务完成
文章图片
推荐阅读
- 个人日记|K8s中Pod生命周期和重启策略
- 学习分享|【C语言函数基础】
- C++|C++浇水装置问题
- 数据结构|C++技巧(用class类实现链表)
- C++|从零开始学C++之基本知识
- 步履拾级杂记|VS2019的各种使用问题及解决方法
- leetcode题解|leetcode#106. 从中序与后序遍历序列构造二叉树
- 动态规划|暴力递归经典问题
- 麦克算法|4指针与队列
- 遇见蓝桥遇见你|小唐开始刷蓝桥(一)2020年第十一届C/C++ B组第二场蓝桥杯省赛真题