以下是检查标量变量是否在 Perl 中使用 define
进行初始化的最佳方法吗?
my $var;
if (cond) {
$var = "string1";
}
# Is this the correct way?
if (defined $var) {
...
}
最佳答案
Perl 没有提供检查变量是否已初始化的方法。
但是,未使用某个值显式初始化的标量变量在默认情况下恰好具有 undef
值。您认为 define
是检查变量是否具有 undef
值的正确方法,这是正确的。
还有其他几种方法。如果您想分配给 undef
变量(您的示例代码似乎表明了这一点),您可以使用 perl 的定义或运算符:
$var //= 'a default value';
关于perl - 如何检查 Perl 标量变量是否已初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3738836/