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

Project1

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

[已经过期] 实变量定义

[复制链接]

Lv1.梦旅人

梦石
0
星屑
180
在线时间
810 小时
注册时间
2013-8-23
帖子
804

开拓者

跳转到指定楼层
1
发表于 2014-2-8 21:10:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如下所示定义实变量

class Person
  def name
    return @name
  end
  def name=(name)
    @name = name
  end
  def hello
    print "我是" + @name + ""
  end
end

alex = Person.new
alex.name = "艾力克斯"
alex.hello                  # => 我是艾力克斯


在Person类中定义了name和name=两个方法,其中方法name=,name和=之间没有空格
alex为Person类对象
alex.name = "艾力克斯"
为什么实际调用了name=方法?调用方法的时候name和=之间多加了一个空格啊?
遗失的签名。。。

Lv5.捕梦者

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

开拓者

2
发表于 2014-2-9 11:00:34 | 只看该作者
name=方法 是类内部定义变量的写入方法。
调用方法的时候name和=  ,众所周知,是给变量赋值,就像 a = 0 一样,要加空格。

点评

定义方法的时候定义的是name=方法 name和=之间加空格的方法没有定义啊  发表于 2014-2-9 16:24
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
466 小时
注册时间
2013-2-8
帖子
424
3
发表于 2014-2-9 11:09:31 手机端发表。 | 只看该作者
不加也行啊!

点评

为什么加和不加产生的效果都一样呢  发表于 2014-2-9 16:25
回复 支持 反对

使用道具 举报

Lv5.捕梦者

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

开拓者

4
发表于 2014-2-9 16:29:33 | 只看该作者
name=(name)  是定义类实例变量的一个写入方法。
name = "" 是运用上面定义的方法写入

点评

定义方法的时候没定义name和=之间有空格的方法,调用方法的时候name和=之间加了空格?我试了空格加不加结果都一样,这空格是干什么用的?  发表于 2014-2-9 19:40
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-29 06:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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