首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++ RedisClient : RedisValue.toInt()是如何工作的?

C++ RedisClient : RedisValue.toInt()是如何工作的?
EN

Stack Overflow用户
提问于 2015-10-09 07:26:55
回答 1查看 265关注 0票数 0

这是关于RedisClient的,它是C++客户端。

我知道您不能将整数存储在Redis中(这是内部转换的)。

RedisSyncClient::命令本身不支持整数,因为RedisBuffer不能用int初始化,因此:

redis->command("SET", "mykey", 1);

不会编译(您需要将数字添加为字符串)。

但是,可以使用int (不确定何时使用)初始化RedisValue,并且它包含一个公共的"toInt()“方法:

redis->command("SET", "mykey", "1"); result = redis->command("GET", "mykey"); cout << "INT: " << result.toInt() << " , STR: " << result.toString() << endl;

INT: 0,STR :1

起初,我认为内部字符串被转换为int,但它总是返回"0“。测试"RedisValue.isInt()“似乎无法识别数字,因为它返回"false”。

  • 如果数字只被这个库看作字符串,那么"toInt()“的意图是什么?
  • 我是不是用错了?
  • 这是在进行中的工作吗?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-09 07:40:27

现在事情对我来说很有意义..。它似乎可用于响应红色信息系统,例如:

result = redis->command("EXISTS", "mykey"); cout << "? " << result.isInt() << endl;

?1

在本例中,toInt()按预期工作。

我只需要查看redis文档,看看哪些命令返回int。它不是设计用来与“正常”值。

(很抱歉回答我自己的问题,如果其他答案涵盖了我遗漏的事情,我很乐意接受)。

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

https://stackoverflow.com/questions/33032403

复制
相关文章

相似问题

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