首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++ Redis hiredis编译器错误?

C++ Redis hiredis编译器错误?
EN

Stack Overflow用户
提问于 2012-10-31 01:59:32
回答 3查看 3K关注 0票数 1

多亏了这个站点上的某个人,我才能够使用示例C++源文件。https://gist.github.com/1893378当我编译这段代码时,我得到了一堆奇怪的编译器错误:

代码语言:javascript
复制
/home/.../workspace/redis-hiredis-3c46b13/pipelineTest.cpp: In function ‘void redisTop(redisContext*)’:
/home/.../workspace/redis-hiredis-3c46b13/pipelineTest.cpp:142:32: error: invalid conversion from ‘void*’ to ‘redisReply*’
/home/../workspace/redis-hiredis-3c46b13/pipelineTest.cpp:162:25: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘long int’
/home/=.../workspace/redis-hiredis-3c46b13/pipelineTest.cpp: In function ‘int main(int, char**)’: 

我意识到我可能与hiredis libray不同步,但我使用的是最新版本。有什么想法可以正确地构建这个C++程序吗?

此外,我正在寻找一个与Redis管道完整的C++教程。下面是一个用Java编写的非常好的例子:

http://www.cafebabe.me/2011/05/redis-pipelines-and-transactions.html

C++没有这样的示例教程吗?

不管怎样,谢谢你

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-31 02:34:16

实际上,它是一个C程序,而不是C++。C++编译器通常比C编译器更书生气,它会抱怨。要使用C++编译器进行编译,需要进行较小的调整。

我这样做了,并再次将文件放到网上:https://gist.github.com/1893378

它现在可以很好地编译g++ 3.4和4.3

AFAIK,没有适用于Redis的C++教程。我认为在C++中处理Redis的最好方法是在hiredis之上开发你自己的包装类。这并不难。

票数 2
EN

Stack Overflow用户

发布于 2018-07-19 13:25:57

只需将redisCommand转换为redisReply

代码语言:javascript
复制
reply = (redisReply *)redisCommand(context, "PING");
票数 1
EN

Stack Overflow用户

发布于 2012-10-31 02:16:33

这是一个C程序。您必须使用C编译器来构建它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13144981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档