递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 3032|回复: 7
打印 上一主题 下一主题

[视窗] YYjson作者进来一下,好像是个BUG

[复制链接]

28

主题

72

帖子

438

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
438
跳转到指定楼层
楼主
发表于 2022-11-6 10:59:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
YYjson,昨天测试了一下,这个对象型类和数组类变量复用时,清空后,不对啊。代码如下图所示
得到的效果,复用时清空后的内容。而且那个json变量中的word 出现两个,得不到预期的效果啊?还是我用法有问题,但是这逻辑在JSON库使用OK的。

回复

使用道具 举报

91

主题

491

帖子

2057

积分

金牌会员

免费版体验专员

Rank: 6Rank: 6

积分
2057
沙发
发表于 2022-11-6 12:08:10 | 只看该作者
YYjson的成员好像不能复用,还不能是局部变量
非主流编程软件/非官方指定的/非正式版体验专员
回复

使用道具 举报

82

主题

481

帖子

3053

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
3053
板凳
发表于 2022-11-6 12:34:52 | 只看该作者
那就是有问题,第三方的慎用。
回复

使用道具 举报

54

主题

309

帖子

2415

积分

金牌会员

Rank: 6Rank: 6

积分
2415
QQ
地板
发表于 2022-11-6 13:55:52 来自手机 | 只看该作者
试试新建对象,m=(yy数组类)新建对象(yy数组类)
回复

使用道具 举报

26

主题

1542

帖子

5767

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5767
5#
发表于 2022-11-6 14:18:47 | 只看该作者
这个就是YYJSON官方的,并不是BUG,而且方法备注里写得很清楚了。
YYJSON以速度为优先,很多用法是反常识的
比如这个加入成员,并不会把数据复制过去,而是引用
同一个对象只能加入一次,多次加入会造成混乱,而且成员对象不能比主对象先释放
如果要加入局部的对象,应该用 缓存并加入成员
回复

使用道具 举报

439

主题

1万

帖子

3万

积分

超级版主

Rank: 8Rank: 8

积分
37119
6#
发表于 2022-11-6 16:36:31 | 只看该作者
不能重复使用。。正常的。为了效率牺牲了很多。
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

28

主题

72

帖子

438

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
438
7#
 楼主| 发表于 2022-11-7 10:19:05 | 只看该作者
了解了,就是那个内存引用对吧!一旦清空就全没有了。
回复

使用道具 举报

13

主题

83

帖子

540

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
540
8#
发表于 2022-12-4 23:19:56 | 只看该作者
我也碰到这个问题了,弄了几个小时,终于搞定了

YYJSON数组类 重复加入局部变量的 YYJSON对象类 的方法是:

json对象.重置对象内容 ()
json对象.加入文本成员 ("name","1")
json数组.缓存并加入成员 (json对象)

不能用json对象.清空
不然json数组加入的就是空文本了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-6-11 04:30 , Processed in 0.102548 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表