我刚刚在我的Ubuntu上发现Perl不会抱怨最后的分号。请检查以下代码:Perl不会抱怨丢失分号
#!/usr/bin/perl
use warnings;
use strict;
my @array = (1, 2, 3, 4);
foreach (@array)
{
print $_."\n"
}
print "no, this cant be true"
请注意,分号“;”从打印语句中缺少。代码运行良好。
OUTPUT:
1
2
3
4
no, this cant be true
如果我把分号打印后,它仍然有效。所以这让我感到困惑。
你能帮我理解我在这里错过了什么,或者是否有一些我忽略的明显的Perl意识形态?
它不抱怨“额外”分号。 “额外”和“缺少”逗号也一样。 – ikegami 2013-05-09 09:31:35
从档案中:[只有在忘记分号时才运行的程序](http://stackoverflow.com/q/11695110/168657) – mob 2013-05-09 14:51:44
这实际上在单行eval块中非常方便。考虑说“eval {$ some-> method};”诗句说“eval {$ some-> method;};”。 – 2013-10-17 13:37:00