$a->;{abcd}=';123';用perl是什么意思?
在一个子例程的末尾,我在一个Perl脚本中遇到了$a->;{abcd}=';123';用perl是什么意思?,perl,Perl,在一个子例程的末尾,我在一个Perl脚本中遇到了$a->{abed}='123',但无法理解此语句实际上要做什么?这意味着将字符串值'123'分配给$ahashref的'abed'键,如下所示: { abed => '123' } 您可以在中找到有关hashrefs的更多信息 如果这是子例程中的最后一行,则表示此表达式的结果$a->{abed}='123'作为该子例程的返回值返回,在本例中,结果为'123' 一些注意事项: $a是一个糟糕的变量名称,因为原语使用它 ->运算符是一个解引用
$a->{abed}='123'
,但无法理解此语句实际上要做什么?这意味着将字符串值'123'
分配给$a
hashref的'abed'
键,如下所示:
{ abed => '123' }
您可以在中找到有关hashrefs的更多信息
如果这是子例程中的最后一行,则表示此表达式的结果$a->{abed}='123'
作为该子例程的返回值返回,在本例中,结果为'123'
一些注意事项:
$a
是一个糟糕的变量名称,因为原语使用它->
运算符是一个解引用。从{}
可以推断出被取消引用的是散列引用
因此:
但是你不应该使用
$a
,除非它在排序中。通常使用单字符var名称是一件坏事,但是$a
和$b
尤其具有特殊意义,因为它们被用作排序
迭代器 如果语法有问题,那么您还有大量关于Perl的知识要学习。如果堆栈溢出中充满了诸如$x=99
是什么意思之类的问题的答案,那么堆栈溢出将是一个糟糕的资源?仅通过阅读就可以在30秒内找到此问题的答案。标准Perl文档的另一个相关部分是
#!/usr/bin/env perl
use strict;
use warnings;
use Data::Dumper;
my %hash = ( 'abc' => 546 );
my $a = \%hash;
$a->{abed} = '123';
print Dumper \$a;