5

我正在学习 Perl,我遇到了下面的代码片段:

print $$q, "\n"

有一个$q变量我们不知道它到底是什么。但是,我们知道当我们运行这段代码时,它会打印"world".

那么,可以$q是什么?是什么$$q意思?

4

2 回答 2

5

在您的情况下$q标量引用。所以$$q给你一个由引用指向的标量$q。简单的例子:

$a = \"world"; #Put reference to scalar with string "world" into $a
print $$a."\n"; #Print scalar pointed by $a
于 2013-04-06T20:04:24.527 回答
2
$$q == ${$q}

$q表示一个引用,并且您试图在标量上下文中取消引用它。

有关更多信息,请访问perlref 文档

于 2013-04-06T20:19:17.613 回答