查看: 2970|回复: 9

[已经解决] 请问,在p $data_actors 的内容中,这段数字表示什么?

[复制链接]
梦石
0
星屑
208
在线时间
420 小时
注册时间
2020-1-11
回帖
175
发表于 2020-4-30 22:09:51 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×

点评

单纯就是对象的内存地址 同时也是 object_id 的两倍  发表于 2020-4-30 23:34
梦石
0
星屑
11809
在线时间
623 小时
注册时间
2016-8-25
回帖
1340

R考场第七期纪念奖

发表于 2020-4-30 23:00:46 | 显示全部楼层
是角色ID吧
回复 0 1

使用道具 举报

梦石
0
星屑
208
在线时间
420 小时
注册时间
2020-1-11
回帖
175
 楼主| 发表于 2020-4-30 23:05:22 | 显示全部楼层

我仔细又看了一遍,第二行末、第三行头。有个被断掉的。@id = 1
回复

使用道具 举报

梦石
10
星屑
39550
在线时间
1919 小时
注册时间
2010-11-14
回帖
3214

R考场第七期纪念奖

发表于 2020-4-30 23:09:41 | 显示全部楼层
那串16进制数是RPG::Actor对象的object_id

ruby文档的解释是这样的

object_id → fixnum
Returns an integer identifier for obj. The same number will be returned on all calls to id for a given object, and no two active objects will share an id.
Object#object_id is a different concept from the :name notation, which returns the symbol id of name. Replaces the deprecated Object#id.

简单来说,就是辨认对象唯一性的一串数字。
每个对象的object_id都不同,因此只要比较object_id就能知道是不是同一对象。
另外,在ruby里equal?方法做的就是比较两个对象的object_id。

点评

有理有据。  发表于 2020-5-1 20:24

评分

参与人数 2星屑 +100 赞 +1 收起 理由
VIPArcher + 100 认可答案
MCCF + 1 认可答案

查看全部评分

用头画头像,用脚写脚本
回复 1 0

使用道具 举报

梦石
0
星屑
14720
在线时间
2175 小时
注册时间
2016-9-20
回帖
777
发表于 2020-5-1 14:05:30 | 显示全部楼层
这个角色"艾里克"的數据存放在0x659c8f0 這个地址中,其中0x代表十六进制
      角色"娜塔丽"的數据存放在0x659c6c0 這个地址中
在外G(內存修改器之类)解釋 就是"人物基址"

点评

这样在存档时才知道要存在那个地址,真聪明。  发表于 2020-5-1 20:27

评分

参与人数 1赞 +1 收起 理由
MCCF + 1 认可答案

查看全部评分

贴子只供参考我贴子内容有很多只是我自己标识的内容代指不是原来意思,偏向发贴当时的想法(后来回看贴发现有很多错误,会造成误导 ),如果想靠谱点应 找相关正确的文章   -- 2025/4/19
回复 1 0

使用道具 举报

梦石
0
星屑
208
在线时间
420 小时
注册时间
2020-1-11
回帖
175
 楼主| 发表于 2020-5-1 20:29:57 | 显示全部楼层
还有一个延伸出来的问题,就是$data_actors中的各个实例(@打头的数组),是以什么方式排列的?(如大小、字母顺序还是其它?)

点评

一般认为是按照实例变量使用的先后顺序。比如脚本里从上到下一个个定义实例变量,那么就会以这个顺序出现。(有继承的情况下要考虑父类  发表于 2020-5-2 00:50
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部