2012-12-20 16 views

回答

15

严格的编译指示在Perl中做了三件事情。其中两项是
禁止使用符号引用和“裸词”。 Ruby不支持
这些功能,所以这不是问题。

严格编译指示的另一个特点是避免每次提到一个全局变量时创建随机的
全局变量。在Ruby中,globals看起来
不同于其他变量(前导$),所以这并不是真的
有问题。因为
这是Ruby的声明方法,所以局部变量需要在使用前分配。这解决了Perl的严格编译处理相同的问题

来源:https://groups.google.com/forum/?fromgroups#!topic/ruby-talk-google/PiRnWplvGDw

+2

在更新现有变量时,可能有一个功能与禁用打字错误有关,例如。你可以定义一个变量: $ counter = 0 及以后的代码中,当你更新它时会犯一个错字: $ countre = -1 – alcachi

+1

这里很好的解释为什么元编程功能很难完全实现严格的“变量”红宝石:https://www.ruby-forum.com/topic/115069 – alcachi

相关问题