首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

ruby变量跟方法的二义性

2012-10-07 
ruby变量和方法的二义性在表达式中,当ruby看到象a这样子的名字,它就需要判断a是一个全局变量引用还是一个

ruby变量和方法的二义性
在表达式中,当ruby看到象a这样子的名字,它就需要判断a是一个全局变量引用还是一个对没有参数的方法a的调用。ruby中使用了一种启发式的方法来判断这种情况。当ruby解析源代码文件时,它会记录所有已经被复制的符号,它认为这些符号式变量,如果没有记录,则认为是方法。
def a
print "Function 'a'"
99
end
for i in 1..2
if i == 2
print "a=", a, "\n"
else
a = 1
print "a=", a, "\n"
end
end

输出结果:
a = 1
Function 'a' called
a = 99

热点排行