抱歉,问题可能不清楚,但我在问,因为我不喜欢在不了解我正在阅读的内容的情况下阅读某些内容。
这是“Programming Perl”的片段:
由于您取消引用某事物的方式始终表明您正在寻找哪种类型的参照物,因此可以像使用引用一样使用 typeglob,尽管 typeglob 包含多个不同类型的参照物。所以
${*main::foo}
和${\$main::foo}
都访问相同的标量变量,尽管后者更有效。
对我来说,这似乎是错误的,如果是这样的话,那就对了:
您可以使用 typeglob 而不是标量变量,因为引用始终是标量,编译器知道您需要什么。
从本书的正文中,读者可以假设引用可以不是标量变量(即符号表中的标量条目)。一旦我看到一个警告:use of array as a reference is deprecated
,所以在我看来,很久以前“Programming Perl”中的这一段是有意义的,因为引用不仅可以是标量,而且在新的第 4 版中它根本没有改变以符合现代 Perl .
我检查了这本书的勘误页,但一无所获。
我的假设正确吗?如果不是,那么有人会很乐意解释,我错了。
先感谢您。