Perl的-w开关在5.6.x之后弃用了警告吗?

问题描述:

我在Simon Cozens的书“Beginning Perl”中读到了-w切换警告将会被弃用。这是真的还是可以继续使用-w而不是“使用警告”。Perl的-w开关在5.6.x之后弃用了警告吗?

+3

将你的Perl教程书升级到最近写的东西。那本书是古代的历史。 :) – 2010-10-19 05:53:57

+1

我已经缩小到几本书的人气 - 1)学习Perl 2)编程Perl和3)Perl食谱。我打算现在使用这3个。将感谢任何其他建议。 – Wilderness 2010-10-19 06:08:46

+1

使用严格; 使用警告; 我觉得使用警告,严格是perl编程最优雅的方式。 – vrbilgi 2010-10-19 06:10:28

perlrun文档(请参阅perldoc perlrunthis page)表示从Perl 5.12.2开始,-w选项仍然可用。尽管使用编译指示可以获得很多好处,例如turning warnings on lexically和更细粒度的警告。

Here是为什么你应该使用编译指示而不是命令行选项。

+0

谢谢,mfollett!我明白你的观点。所以,我应该养成使用的习惯: #!/ usr/local/bin/perl 使用警告; 而不是: #!/ usr/local/bin -w ? – Wilderness 2010-10-19 06:10:08

+0

当使用-w时,运行脚本为perl foo.pl会打开警告吗? – 2010-10-19 08:18:30

+2

@Wilderness:'使用警告;'不应该在shebang行。这是一个普通的Perl语句。 – tsee 2010-10-19 13:45:46

-w选项将不是走开!

打开警告的首选方法是use warnings,因为-w具有全局效果。 (实际上,-w是通过一个全局变量$^W来实现的,只有这样才能告诉你词法版本更安全。)