Perl use strict和use warnings

Perl use strict和use warnings,几乎每个 perl 脚本中都可以找到以下几行:

use strict;
use warnings;

在本文中,我们将逐一讨论它们。

注意:您可能无法在本网站提供的某些脚本中找到这些编译指示,这是为了避免与初学者混淆。但是,您会在高级主题上找到它们。

use strict

use strict语句称为pragma,它可以放在脚本的开头,如下所示:

#!/usr/local/bin/perl 
use strict;

它做了什么?

它会强制您正确编码以使您的程序不易出错。例如:它强制您在使用它们之前声明变量。您可以使用my关键字声明变量。my关键字将变量的范围限制为局部。它使代码更易读,更不容易出错。

如果你没有使用my关键字声明变量,那么创建的变量将是全局的,你应该避免,将变量的范围缩小到需要它的位置是一个很好的编程习惯。

示例如下,如果使用use strict但不声明变量。

#!/usr/local/bin/perl 
use strict;
s = "Hello!\n";
prints;

它会抛出这个错误:

Global symbol "s" requires explicit package name at st.pl line 3.
Global symbol "s" requires explicit package name at st.pl line 4.
Execution of st.pl aborted due to compilation errors.

要避免错误,您必须使用my关键字声明变量。

#!/usr/local/bin/perl 
use strict;
my s = "Hello!\n";
prints;

输出:

Hello!

同样,您需要在使用它们之前声明数组和哈希值。

注意:从 Perl 5.12 开始,隐式启用此编译指令,这意味着如果您使用的是 Perl 5.12 或更高版本,则无需使用use strict作为编译指令,它默认情况下启用。

use warnings

这是另一个pragma,它们一起使用如下:

#!/usr/local/bin/perl 
use strict;
use warnings;

注意use warnings pragm在 Perl 5.6 中引入,所以如果你使用的是 Perl 5.6 或更高版本,就可以了。如果您使用的是旧版本,可以打开如下警告:将-w放在shebang行。

#!/usr/local/bin/perl -w

即使在 Perl 5.6 或更高版本上,这也适用于任何地方。

use warnings有什么用?

它可以帮助您找到打字错误,它会在您看到程序出错时向您发出警告。它可以帮助您更快地找到程序中的错误。

注意:这里要注意的最重要的一点是use strict会在程序发现错误时中止程序的执行。另一方面,使用警告只会为您提供警告,它不会中止执行。

结论:

你应该总是在你的程序中使用这两个pragma,因为它是一个很好的编程习惯。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程