perl - @{$list_ref} 和 @$list_ref 在 Perl 中是等价的吗?

标签 perl dereference

我是 Perl 新手,很好奇 @{$list_ref}@$list_ref是完全等效的。

它们似乎可以互换,但我很紧张,因为我可能会遗漏一些微妙的东西。

最佳答案

是的,它们是等价的。当表达式不仅仅是一个简单的标量变量时,您需要大括号,例如,

push @{ $foo{$bar} } => "baz";

有关更多详细信息,请参阅 Using References documentation on references的部分.标准 Perl 文档还包括几个关于使用引用的教程:
  • Understand References Today (在问题的评论中由 hobbs 提及)
  • Manipulating Arrays of Arrays in Perl
  • Perl Data Structures Cookbook
  • 关于perl - @{$list_ref} 和 @$list_ref 在 Perl 中是等价的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1877607/

    相关文章:

    perl - 通过具体示例了解 Perl 中的异步

    php - apache模块与cgi(关于安全性)之间有区别吗?

    c++ - 为指针 vector 取消引用迭代器时出现段错误

    C++初学者问题: dereference vs multiply

    c - C如何推断 "assignable values"/l-values

    python - grep、awk、bash 和 friend ?有什么工具可以处理这些数据吗?

    perl - Perl 的类似 Lint 的程序?

    perl - 为什么带有 uwsgi_psgi 的 Perlbrew PSGI 应用程序会导致 "wrong"Perl 包含路径?

    c++ - 如果地址已知,如何获取指针变量的名称?

    c - 取消引用指针错误