设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2568|回复: 14
打印 上一主题 下一主题

[已经解决] 请问语句前面加@符合代表什么

[复制链接]

Lv2.观梦者

梦石
0
星屑
445
在线时间
27 小时
注册时间
2018-7-23
帖子
33
跳转到指定楼层
1
发表于 2019-3-8 08:25:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
  @sprite1.bitmap = RPG::Cache.title("Title-Words.png")
    @sprite1.x = 112
    @sprite1.y = 36
    @sprite2 = Sprite.new
    @sprite2.bitmap = RPG::Cache.title("Title-Subwords.png")
    @sprite2.x = 128
    @sprite2.y = 96
    @sprite3 = Sprite.new
    @sprite3.bitmap = @sprite1.bitmap         
    @sprite3.x = 240
    @sprite3.y = 36
    @sprite4 =Sprite.new
    @sprite4.bitmap = @sprite2.bitmap
    @sprite4.x = 256
    @sprite4.y = 96
    @sprite1.opacity = 0
    @sprite2.opacity = 0
    @sprite3.opacity = 0
    @sprite4.opacity = 0

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

2
发表于 2019-3-8 10:22:36 | 只看该作者
本帖最后由 KB.Driver 于 2019-3-8 11:09 编辑

@sprite1代表这是一个实例变量。
另外,两个@开头的例如@@xxx则是类变量。

运行时,实例变量不属于类,由类的对象持有。
类变量则由类本身持有,任何实例访问的类变量都是同一个。

评分

参与人数 1星屑 +15 收起 理由
guoxiaomi + 15 认可答案

查看全部评分

用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
14629
在线时间
2152 小时
注册时间
2016-9-20
帖子
861
3
发表于 2019-3-8 10:59:51 | 只看该作者
本帖最后由 ppspssss 于 2019-3-8 11:18 编辑

局部變量<错  , 实變量 ,     以后以少生成多東西就用他了

点评

是 实例变量  发表于 2019-3-8 11:32
扔沟...  发表于 2019-3-8 11:06
我发的贴子大多未经整理是草稿抱歉
回复 支持 0 反对 1

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39592
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

4
发表于 2019-3-8 11:05:14 | 只看该作者
ppspssss 发表于 2019-3-8 10:59
局部變量,     以后以少生成多東西就用他了
局部變量,     以后以少生成多東西就用他了

不带你这么误导的,自己查一下不好吗。

点评

不确定的话要嘛回答前确认一下要嘛别说的这么肯定,既然选择回答人家,那就要为你给的答案负责啊...  发表于 2019-3-8 18:13
都說了記错了, 你有没看的  发表于 2019-3-8 11:20
记不住还不查,那你是不是故意的……  发表于 2019-3-8 11:17
記忆力不好没辦法, 記错  发表于 2019-3-8 11:15
用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

梦石
0
星屑
6901
在线时间
7028 小时
注册时间
2013-11-2
帖子
1344

开拓者剧作品鉴家

5
发表于 2019-3-8 11:24:00 | 只看该作者

评分

参与人数 1+1 收起 理由
myownroc + 1 给大佬倒茶

查看全部评分

回复 支持 1 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
445
在线时间
27 小时
注册时间
2018-7-23
帖子
33
6
 楼主| 发表于 2019-3-9 09:54:23 | 只看该作者
还不懂哦 不过。。。。谢谢大佬了
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
39021
在线时间
5719 小时
注册时间
2006-11-10
帖子
6619
7
发表于 2019-3-9 10:27:45 | 只看该作者
本帖最后由 灯笼菜刀王 于 2019-3-9 10:38 编辑
c1003700862 发表于 2019-3-9 09:54
还不懂哦 不过。。。。谢谢大佬了


名词意思不理解那就用硬记的, 知道它是用来干嘛的就好了, 以后用多了就慢慢能理解帮助文件上的那些名词了

加@的变量, 名字是"实变量" , 它的官方解释在 F1, 脚本入门,基础部分的最后一章, 它是可以在一个类的内部使用的变量

栗子:  
class 圣斗士
  @天马 = 星矢
end  

这表示, 在圣斗士这一个类里, 实变量天马就是星矢, 不会是其他人了, 不管你定义青铜, 还是白银, @天马就是星矢, 除非你重新赋值, @天马 = 卡西欧士, 这样实变量天马才会换人

但是, 在别的类, 比如 class 海贼王,  你在这里用 @天马, 人家就不认识了, 它只限于 圣斗士的内部识别

需要注意的是, 实变量还有个特点, 它是以实际对象为准, 而不是以这个类为准
比如, 教皇 = 圣斗士.new,  雅典娜 = 圣斗士.new,  分别让教皇和雅典娜都带一队圣斗士,  这个时候, @天马就是他们自己分别赋值的, 双方互不影响。  教皇.天马 =卡西欧士, 这个时候教皇这队的圣斗士, @天马就是卡西欧士了,   而 雅典娜.天马 一样是星矢

明白了吧, 不明白就自己用火影去试试
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33488
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

8
发表于 2019-3-9 13:20:55 | 只看该作者
一个类就好比 一个国家 吧。
国家里每个省就比作 每个方法 吧。
带@的实例变量, 就差不多相当于 身份证 。
身份证在全国(类)所有省份(方法)通用,可以获取身份证信息(读取),也到公安局修改身份证信息(重新赋值)。
然而 身份证 到了国外,就不能使用了。
但是可以办签证啊,比如在国内(实例变量所在的类里)先办签证:
attr_reader   :身份证
或者
def 身份证
  return @身份证
end
这样在国外就能获取到你的身份信息。

也可以国内授权给国外更改身份信息(现实中有没有就不知道哈),比如:
attr_writer :身份证
或者
def 身份证=(身份证)
   @身份证 = 身份证
end

唔~,虽然不是太贴切,但好歹还是比较形象的。
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
445
在线时间
27 小时
注册时间
2018-7-23
帖子
33
9
 楼主| 发表于 2019-3-9 17:44:25 | 只看该作者
谢谢。。。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-27 10:31

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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