Leveldb在编译完成后会生成静态链接库libleveldb.a。使用的时候需要和自己的代码链接生成执行文件。以下面的代码为例// leveldb_app.cpp#includeiostream#includestring#includeleveldb/db.h// 引入 leveldb 头文件intmain(){leveldb::DB*db;leveldb::Options options;// 如果数据库目录不存在自动创建options.create_if_missingtrue;// 1. 打开数据库数据会持久化存储在当前目录的 testdb 文件夹中leveldb::Status statusleveldb::DB::Open(options,./testdb,db);if(!status.ok()){std::cerr无法打开数据库: status.ToString()std::endl;return-1;}// 2. 写入数据 (Put)std::string keyhello;std::string valueworld;statusdb-Put(leveldb::WriteOptions(),key,value);if(status.ok()){std::cout成功写入 key: key - value: valuestd::endl;}// 3. 读取数据 (Get)std::string res_value;statusdb-Get(leveldb::ReadOptions(),key,res_value);if(status.ok()){std::cout成功读取 key: key - 获取到 value: res_valuestd::endl;}else{std::cerr读取失败: status.ToString()std::endl;}// 4. 删除数据 (Delete)statusdb-Delete(leveldb::WriteOptions(),key);if(status.ok()){std::cout成功删除 key: keystd::endl;}// 5. 释放数据库指针deletedb;return0;}cmake文件cmake_minimum_required(VERSION 3.10) project(LeveldbApp CXX) set(CMAKE_CXX_STANDARD 14) set(ROOT_PATH leveldb) # 1. 设置 LevelDB 的头文件路径 include_directories(${ROOT_PATH}/include) add_executable(my_leveldb_app leveldb_app.cpp) # 2. 寻找并链接 LevelDB 静态库及其实际依赖 find_library(LEVELDB_LIB leveldb PATHS ${ROOT_PATH}/build) target_link_libraries(my_leveldb_app ${LEVELDB_LIB} pthread snappy)编译完成后会生成名为my_leveldb_app的可执行文件。运行结果如下成功写入 key: hello - value: world 成功读取 key: hello - 获取到 value: world 成功删除 key: hello运行之后会在当前目录产生一个名为testdb的目录。目录下有如下文件这些文件和Leveldb的数据存储有关000003.log CURRENT LOCK LOG MANIFEST-000002