是否不需要在代码的开头定义perl哈希变量.
例如,我在一个脚本变量"反式",这不是定义的发现my %trans
或%trans
在代码的任何地方.但以下代码似乎正在起作用.
$trans{$lang_code} = set_elements($files_to_process{$lang_code},@tags_to_extract);
和
$test = $trans{lc $Preferred_Language}->{'t_14'};
Perl在检查语法后继续将"trans"解释为哈希变量吗?这是怎么回事
如果没有use strict
,则在使用全局变量时会自动创建它们.方便一行脚本,但通常不赞成.此外,还会自动创建哈希中的键.您会看到更少的人抱怨代码,如果它们尚不存在,则会在每个哈希值中$trans{'key1'}{'subkey'}{'detailkey'}{'deepkey'} ++
创建key1,subkey,detailkey和deepkey.