【发布时间】:2012-08-19 20:15:28
【问题描述】:
抱歉,这个问题可能不是很清楚,但我是在问这个问题,因为我不喜欢在不了解我正在阅读的内容的情况下阅读。
这是“Programming Perl”中的sn-p:
因为你取消引用某事物的方式总是表明是哪种 您正在寻找的引用对象,可以像引用一样使用 typeglob, 尽管 typeglob 包含多个不同类型的引用。所以
${*main::foo}和${\$main::foo}都访问同一个标量变量,尽管 后者效率更高。
对我来说,这似乎是错误的,如果是这样的话,那就对了:
您可以使用 typeglob 代替标量变量,因为引用始终是标量,编译器知道您需要什么。
从本书的正文中,读者可以假设引用可以不是标量变量(即符号表中的标量条目)。
一旦我看到一个警告:use of array as a reference is deprecated,所以在我看来,很久以前“Programming Perl”中的这一段是有意义的,因为引用不仅可以是标量,而且在新的第 4 版中它根本没有改变以符合使用现代 Perl。
我检查了这本书的勘误页,但一无所获。
我的假设正确吗?如果不是,那我错在哪里,会很愉快地解释一下。
提前谢谢你。
【问题讨论】:
标签: perl reference dereference perl-data-structures