当前位置: 首页 > news >正文

延安市违法建设举报网站深圳宝安网站推广

延安市违法建设举报网站,深圳宝安网站推广,建网站必备软件,中国建设第一平台网站1. 安装 redis-plus-plus C 操作 Redis 的库有很多,这里选择使用 redis-plus-plus,这个库的功能强大,使用简单。 Github 地址:GitHub - sewenew/redis-plus-plus: Redis client written in C 访问不了Github 地址的可以使用Ste…

1. 安装 redis-plus-plus

C++ 操作 Redis 的库有很多,这里选择使用 redis-plus-plus,这个库的功能强大,使用简单。

Github 地址:GitHub - sewenew/redis-plus-plus: Redis client written in C++

访问不了Github 地址的可以使用Steam++来加速访问。

 redis-plus-plus 是基于 hiredis 实现的。hiredis 是一个 C 语言实现的 redis 客户端,因此需要先安装 hiredis,直接使用包管理器安装即可。

redis-plus-plus本体,只能编译安装,使用编译安装ubuntu会比centos方便很多

1.1 Ubuntu安装

apt install libhiredis-dev

Ubuntu

安装cmake

apt install cmake

具体步骤:

git clone https://github.com/sewenew/redis-plus-plus.git
cd redis-plus-plus

mkdir build

cd build

cmake .. //生成makefile,此处..指向CMakeLists.txt文件所在的目录

make

make install //把刚才的库拷贝到系统目录

2. 编写 HelloWorld

Redis 库最多可以支持到 C++17 版本。(如果是用 Centos,需要注意 gcc/g++ 的版本,看是否支持 C++17。不支持的话,选用 C++11 版本也是可以的)

编译程序时,需要引入的库文件(由于不同系统中安装好的库所在位置会存在差异,因此要注意⽂件路径是否存在。可以用 find 命令来查找库所在的目录):

  1. Redis++ 自己的静态库
  2. hiredis 静态库
  3. 线程库
#include <iostream>
#include <vector>
#include <string>
#include <unordered_map>
#include <sw/redis++/redis++.h>using std::cout;
using std::endl;
using std::vector;
using std::string;
using std::unordered_map;int main()
{// 创建Redis对象时,需要在构造函数中指定redis服务器的地址和端口 sw::redis::Redis redis("tcp://127.0.0.1:6379");// 调用ping方法,让客户端给服务器发了一个PING,然后服务器就会返回一个PONG,就通过返回值获取到 string result = redis.ping(); // 测试用,可不写std::cout << result << std::endl;redis.set("key", "HelloWorld");// 使用 get 获取到 key 对应的 valueauto value1 = redis.get("key");// optional 可以隐式转成 bool 类型, 可以直接在 if 中判定. 如果是无效元素, 就是返回 falseif (value1){std::cout << value1.value() << std::endl;}return 0;
}

为什么头文件要写成这样,不能直接写redis++吗?

肯定是不行的

编译器会从系统默认路径寻找头文件,而默认路径是/usr/local/include,所以我们要加上sw/redis/redis++.h

如下是我们makefile文件

mytest:mytest.cppg++ -std=c++17 -o $@ $^ /usr/local/lib/libredis++.a /usr/lib/x86_64-linux-gnu/libhiredis.a -pthread.PHONY:clean
clean:rm mytest

依赖的是redis++的静态库,hiredis静态库和线程库,我们要写makefile编译的时候要带上对应的路径。

这里要注意,不是每个人下载好的对应库跟我是一样的,大家可以通过find命令去寻找对应路径

http://www.dtcms.com/a/528197.html

相关文章:

  • Mac Nginx安装、启动、简单命令(苍穹外卖、黑马点评前端环境搭建)
  • 新乡哪有做网站的北京seo执行
  • GitHub等平台形成的开源文化正在重塑林语堂
  • 鸿蒙分布式软总线通信协议详解
  • 建立网站的技术做谷歌seo要发大量文章吗
  • 第7章 muduo编程示例(5)
  • 微软输入法词库拓展600w(win11)
  • 解决虚拟机安装的Ubuntu20.04.6 LTS 不能复制粘贴问题
  • Linux中系统调用sys_access函数的实现
  • 微波加热内部温度场的电磁−热耦合模拟
  • 2024ICPC上海
  • 专业制作网站多少钱成品网页网站
  • Linux(LDAP服务)
  • 安卓旧机变服务器,KSWEB部署Typecho博客并实现远程访问:cpolar内网穿透实验室第645个成功挑战
  • 无需云服务的家庭相册:OpenHarmony 上的 Rust 实践
  • OpenHarmony后台服务开发指南:ServiceAbility与ServiceExtensionAbility全解析
  • ARM Cortex-M 向量表详解
  • 网站优化免费软件游戏推广话术
  • wxPython下载和安装教程(附安装包)
  • IOT项目——电源入门系列-第三章
  • 情绪合集 | 以往高分文献分析,揭示情绪研究热点
  • Vue中data和props数据代理的区别
  • C++容器queue
  • 运转灵活小企业网站建设wordpress文章布局
  • 网站网页框架构架图怎么做大理网站开发
  • Cliproxy与Adspower指纹浏览器:跨境业务安全与效率的双重引擎
  • 在线观看免费网站网址开源之家
  • AI降重软件开发方案:基于Python的文本语义重构系统
  • 小杰-自然语言处理(seven)——transformer系列——自注意力(self-attention)
  • 带代码示例的 HTML 标签实操手册