本文档中介绍的模块广泛使用 Perl 复合型标量功能。使用复合型标量功能可将标量值作为整数或字符串,具体取决于上下文。此行为与 $!Perl 变量 (errno) 表现的行为相同。复合型标量功能无需从整数值映射为对应的字符串即可显示值。以下示例说明了复合型标量的使用。
# Assume $obj is a Sun::Solaris::Item my $type = $obj->type(); # prints out "2 EO_ITEM" printf("%d %s\n", $type, $type); # Behaves as an integer, $i == 2 my $i = 0 + $type; # Behaves as a string, $s = "abc EO_ITEM xyx" my $s = "abc $type xyz";