#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <winsock2.h>
#include <iostream>
#include "../hiredis/hiredis.h"
#pragma warning(disable: 4996)
#pragma comment(lib, "ws2_32.lib")
class Redis
{
public:
Redis()
{
WSADATA wsaData;
WSAStartup(MAKEWORD( 2, 2 ), &wsaData);
}
~Redis()
{
this->_connect = NULL;
this->_reply = NULL;
}
bool connect(std::string host, int port)
{
this->_connect = redisConnect(host.c_str(), port);
if (this->_connect->err) {
return false;
}
return true;
}
std::string getError()
{
return this->_connect->errstr;
}
std::string get(std::string key)
{
this->_reply = (redisReply*)redisCommand(this->_connect, "GET %s", key.c_str());
std::string str = this->_reply->str;
freeReplyObject(this->_reply);
return str;
}
void set(std::string key, std::string value)
{
redisCommand(this->_connect, "SET %s %s", key.c_str(), value.c_str());
}
private:
redisContext* _connect;
redisReply* _reply;
};
int main(void)
{
Redis* r = new Redis;
if (!r->connect("192.168.32.8", 6379))
{
printf(".....");
exit(0);
}
r->set("foo", "hello zoujiaqing!");
printf("GET: %s", r->get("foo").c_str());
return 0;
}
C++ 操作Redis 简单封装类
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:浅谈Redis数据库的键值设计
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C++管道通信类封装
简单的介绍一下,管道通信类 指的是 IPC通信中的一种,即两个不同的进程之间的
#include 客户端 管道通信 -
c++ 分数运算简单封装
把分数的几个基本操作封装到了一个命名空间里,支持输入,输出,乘法,加法,约分和取倒数,基于c++ STL中的pair实现,使用时调用函数即可,代码中有简略注释 ...
基础算法 #include 封装 c++ 命名空间 -
c redis 操作的封装 c# redis 封装
【前言】 今天主要为大家分享下几个封装好的关于Redis操作的类,为下篇的功能优化《SCPPO:Redis在项目中的使用及性能测试》做铺垫。【封装类介绍】 1、在项目中引入Redis相关的DLL: &
c redis 操作的封装 redis c# class Redis -
C++共享内存封装类
头文件/******************************************************************++ File Name : FFMClass.h++ Desc...
#include 初始化 #define ide 文件大小