gpt4 book ai didi

perl 不能使用字符串作为数组引用

转载 作者:行者123 更新时间:2023-12-04 18:25:39 26 4
gpt4 key购买 nike

我有 4 个应用程序。我们称它们为:App1、App2、App3 和 App4。

对于这些应用程序中的每一个,我都有一个数组:例如:

my @App1_links = (...some data...);
my @App2_links = (...some data...);
my @App3_links = (...some data...);
my @App4_links = (...some data...);

现在我的代码中有一个循环通过这 4 个应用程序,我打算做这样的事情:

my $link_name = $app_name . "_links";
where $app_name will be App1, App2 etc...

and then use it as : @$link_name

现在这段代码做了我不使用时打算做的事情:use strict 但不是其他的

The error is: Can't use string ("App1_links") as an ARRAY ref while "strict refs" in use at code.pm line 123.

如何使用 use strict 实现此功能。

请帮忙。

最佳答案

您正在使用 $link_name 作为 symbolic reference这在 use strict 'refs' 下是不允许的。
尝试改用哈希,例如

my %map = (
App1 => \@App1_links,
...
);
my $link_name = $map{$app_name};

关于perl 不能使用字符串作为数组引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11567081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com