2

我有一个名称数组,对于每个名称,我希望创建一个散列,并将其作为变量名。像这样的东西

@list = ('Name1', 'Name2', 'Name3')  

for ($i = 0; $i < scalar @list; $i++) {  
  %(list[$i]);  
}  

谁能告诉我这是否可能?

4

1 回答 1

2

这将创建一个带有以所提供列表的元素命名的键的散列:

my @list=('Name1','Name2','Name3');
my %hash;
@hash{@list}=()x3;

根据您的评论,以下是更新:

因此,现在您可以它们视为您有 3 个哈希引用,并且您可以按照以下示例填充它们,我们在其中添加keyvalue到 hashref Name2

$hash{'Name2'}->{'key'}='value';
于 2013-11-11T13:58:37.307 回答