下面这两个例子在开始编写Perl脚本时有什么区别吗?如果是这样的话,我什么时候应该使用一个而不是另一个呢?
示例1:
#!/usr/bin/perl
use warnings;
示例2:
#!/usr/bin/perl -w
发布于 2008-10-21 14:25:13
-w
命令行开关为整个解释器全局打开警告。另一方面,use warnings
是一个“词法杂注”,只适用于使用它的词法作用域。通常,您将它放在文件的顶部,以便它应用于整个文件,但您也可以将它的范围扩大到特定的块。此外,在需要执行其他警告生成行为的情况下,可以使用no warnings
在块中临时关闭它们。如果你打开了-w
,你就不能这样做。
有关词法警告如何工作的详细信息,包括如何打开和关闭它们的各个子集,请参阅perllexwarn文档。
发布于 2008-10-21 15:23:16
"-w“是旧的,过去是打开警告的唯一方法(实际上,"-w”只是启用全局$^W变量)。"use warnings;“现在更可取(从5.6.0版本开始),因为(如前所述)它有一个词法作用域,而不是全局作用域,并且您可以打开/关闭特定的警告。别忘了也要以"use strict;“开头:-)
发布于 2008-10-21 21:10:03
另一个值得注意的区别是,“使用警告”杂注还允许您选择要启用的特定警告(同样,“无警告”允许您选择要禁用的警告)。
https://stackoverflow.com/questions/221919
复制相似问题