相关疑难解决方法(0)

为什么Perl使用空字符串来表示布尔值false?

在标量(布尔)上下文中1计算表达式时,如果表达式求值为true ,则Perl使用显式值作为结果;如果表达式求值为false,则使用空字符串.我很好奇为什么Perl使用空字符串来表示布尔值false而不是0更直观.

请注意,我并不关心Perl将空字符串视为标量(布尔)上下文中的false.

编辑

如何使用true("false"例如)字符串作为false值的字符串表示来改变现有代码的含义?我们可以说在这样的改变之后改变语义的代码不像它本来那样健壮/正确吗?我猜字符串上下文在Perl中是如此普遍,以至于导致理智语义的唯一选择是,如果布尔值在向字符串转换为字符串之后保留其值...

perl boolean boolean-expression

18
推荐指数
2
解决办法
3095
查看次数

返回布尔实际返回的Perl函数是什么

Perl 定义的函数(以及许多其他函数)返回"布尔值".

鉴于Perl实际上没有布尔类型(并且使用值为1表示true,0undef表示false)Perl语言是否准确指定了布尔值的返回值?例如,会defined(undef)返回0undef,是否会发生变化?

perl boolean return

12
推荐指数
2
解决办法
4373
查看次数

标签 统计

boolean ×2

perl ×2

boolean-expression ×1

return ×1