在列表上下文中分配哈希有什么区别?

我必须表达:

%MON =    months => 1, end_of_month => 'limit';      # months => undef
%MON =  ( months => 1, end_of_month => 'limit' );

为什么第一个表达式只产生一个monthsundef值的键?它们之间有什么区别?

回答

参见perlop。=优先级高于=>

%MON =    months => 1, end_of_month => 'limit'; 

相当于:

(%MON = "months"), 1, "end_of_month", "limit"

尽管:

%MON =  ( months => 1, end_of_month => 'limit' );

是:

%MON = ("months", 1, "end_of_month", "limit")


以上是在列表上下文中分配哈希有什么区别?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>