[英]Perl variables defined with * vs $
使用*与$定义变量之间的区别是什么? 例如:
local $var;
local *var;
$var
是一个标量。 *var
是一个typeglob。 http://perldoc.perl.org/perldata.html#Typeglobs-and-Filehandles
从严格意义上讲,这不是一个变数。 你通常不应该使用它。
初始字符称为sigil ,并表示标识符表示的值。 你会了解他们中的大部分。 这是一个清单
Dollar $
是一个标量值
在符号@
是一个数组值
百分比%
是哈希值
Ampersand &
是一个代码值
Asterisk *
是一个typeglob
你是不太可能所遇到的最后两个最近,因为&
调用子程序时,因为Perl 5.0发布一直没有必要。 而typeglobs是一种特殊类型,包含所有其他类型,并且更少使用。
我正在考虑进一步深入研究所有这些问题,但是现在我会给出答案。 我可能会根据出现的评论写更多内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.