Project1
标题:
令我头疼的实例变量,应该如何理解
[打印本页]
作者:
kvkv97
时间:
2013-12-12 22:09
标题:
令我头疼的实例变量,应该如何理解
F1中说,这个attr_accessor:name 和下面的这个相同意思
def name
return @name
end 生成@name变量
def name=(name)
@name = name
end 不知道下面是怎么附加属性的?属性是什么意思?
作者:
英顺的马甲
时间:
2013-12-12 23:48
attr_accessor :name # 把@name设置为外部可读可写
def name # 定义一个名为name的函数,没有参数
return @name # 函数被调用时返回@name这个变量
end
def name=(n) # 定义一个有等于的name函数,有参数
@name = n # 把@name这个变量定为参数
end
复制代码
作者:
Sion
时间:
2013-12-13 23:57
本帖最后由 Sion 于 2013-12-14 00:05 编辑
这个只是方法定义而已。
实例变量和方法定义是2个东西。
attr_accessor 定义的这2个方法分别用于读取和修改实例里的实例变量。
再次重申,attr_accessor 就是快速定义跟实例变量名一样的方法而已。
类似的还有 attr_reader 和 attr_writer 。
脚本里那个 “
● 定义实例变量
” 实在是一个渣解释
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1