|
|
1
19
总结
输出
递增或递减未定义的值
上面的代码输出
附加到未定义的值与隐式零类似,如果将至少一次附加到空字符串,则无需显式将标量初始化为空字符串:
一个例子是“自生” Wikipedia article : 例如:
即使我们没有显式初始化中间键,Perl也会处理脚手架: $VAR1 = {
'bar' => {
'baz' => {
'quux' => '1'
}
}
};
如果没有自动激活,代码将需要更多的样板文件:
我们得到 Use of uninitialized value in print at ./prog.pl line 6.
$VAR1 = {
'bar' => {
'baz' => {}
}
};
遗憾的是,Perl(还没有!)自动激活以下内容:
其他突变子In an answer to a similar question ,伊斯特报道
被定义或
|
|
|
2
2
|
|
|
3
2
即使 那些讨厌的。
对于许多二进制运算符,您可以使用新的Perl 5.10内容,
也是
智能匹配(
|
|
|
4
0
真正的答案应该是:你为什么要打开这个警告?undef对于变量来说是一个非常好的值(任何使用过数据库的人都可以告诉您),区分true(发生了什么)、false(没有发生什么)和undef(发生了错误)通常是有意义的。
说
common::sense可从CPAN获得。 |