这个以前是学 C 语言起步的 所以有一些 C/C++ 的概念比较根深蒂固 所以上来咨询一下块的问题
在 C/C++ 里
void f(){
int x=1;
{
x=2;
}
{
x=3;
}
}
我们可以这样区分多个块来进行对 x 的划分,而且在 C/C++ 里面,这样是允许的,也有很多这样的例子;但是在 Ruby 里面
def f
x=1
{
x=2
}
end
这样的写法是不允许的。在 Ruby 里面一个块必须得有一个方法来引导或者必须作为一个对象来保存
对于这点有点不明白