繁体   English   中英

用* vs $定义的Perl变量

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM