在现代C++开发中,与高性能键值数据库Redis进行交互是常见需求。而 hiredis 是官方推荐的轻量级C语言客户端库,因其简洁、高效,被广泛用于C/C++项目中。本教程将手把手教你如何在C++项目中集成并使用hiredis库,即使是编程新手也能轻松上手。

hiredis 是 Redis 官方提供的 C 语言客户端库,支持同步、异步和响应式编程模型。虽然它是用 C 编写的,但完全兼容 C++,因此成为 C++连接Redis 的首选工具之一。它体积小、依赖少、性能高,非常适合嵌入到各类C++应用中。
在Linux系统(如Ubuntu/Debian)中,可以通过包管理器快速安装:
sudo apt updatesudo apt install libhiredis-dev如果你希望从源码编译(适用于所有Linux发行版或自定义配置):
git clone https://github.com/redis/hiredis.gitcd hiredismakesudo make install安装完成后,头文件通常位于 /usr/local/include/hiredis/,库文件在 /usr/local/lib/。
下面我们将编写一个简单的C++程序,演示如何使用hiredis连接本地Redis服务器,并执行SET和GET操作。
#include <iostream>#include <hiredis/hiredis.h>int main() { // 连接到本地 Redis 服务器(默认端口 6379) redisContext *context = redisConnect("127.0.0.1", 6379); // 检查连接是否成功 if (context == nullptr || context->err) { if (context) { std::cerr << "连接错误: " << context->errstr << std::endl; redisFree(context); } else { std::cerr << "无法分配 redis context" << std::endl; } return 1; } std::cout << "✅ 成功连接到 Redis 服务器!" << std::endl; // 执行 SET 命令 redisReply *reply = (redisReply*)redisCommand(context, "SET %s %s", "hello", "world"); if (reply == nullptr) { std::cerr << "命令执行失败" << std::endl; redisFree(context); return 1; } std::cout << "SET 返回: " << reply->str << std::endl; freeReplyObject(reply); // 释放 reply 内存 // 执行 GET 命令 reply = (redisReply*)redisCommand(context, "GET hello"); if (reply != nullptr && reply->type == REDIS_REPLY_STRING) { std::cout << "GET 返回: " << reply->str << std::endl; } else { std::cout << "未找到 key 或返回类型错误" << std::endl; } freeReplyObject(reply); redisFree(context); // 关闭连接 return 0;}将上述代码保存为 redis_demo.cpp,然后使用以下命令编译:
g++ -o redis_demo redis_demo.cpp -lhiredis确保你的Redis服务正在运行(可通过 redis-server 启动),然后执行:
./redis_demo预期输出:
✅ 成功连接到 Redis 服务器!SET 返回: OKGET 返回: worldredisCommand 返回的 redisReply* 必须通过 freeReplyObject() 释放,否则会造成内存泄漏。context->err 和 reply 是否为空,避免程序崩溃。通过本教程,你已经掌握了如何在C++项目中使用 hiredis C++教程 中的核心方法来连接和操作Redis。无论是做缓存、消息队列还是会话存储,hiredis都能为你提供稳定高效的底层支持。
记住关键的 Redis C++客户端 使用步骤:连接 → 执行命令 → 处理响应 → 释放资源。掌握这些,你就具备了构建高性能C++后端服务的基础能力。
希望这篇 hiredis使用指南 对你有所帮助!快去动手试试吧!
本文由主机测评网于2025-12-11发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025126104.html