4
在C中,可以使用语句块将局部变量与其父作用域隔离。Ruby变量作用域块
int foo() {
{
int a;
}
// Here `a` is no longer in the scope.
}
但是在Ruby中,以下解析失败。
def foo
do
a = 1
end
puts a
end
是否有把把变量隔离到Ruby中的作用域的技巧?
宣告内嵌块的符号是'开始...... end',而不是'做... end'。 – tadman 2014-10-08 20:28:54
在Ruby中,_scope_ gates由3个关键字创建:'def','class'和'module'。 – 2014-10-08 20:31:11
https://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Newcomers/ruby.html#blocks – 2014-10-08 20:34:37