perl – “使用模块”后代码块的含义是什么?

前端之家收集整理的这篇文章主要介绍了perl – “使用模块”后代码块的含义是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
什么是重要的,这样的东西有什么影响(我认为它是面向对象的):
use My::Confusing::Code
{
   CITY  => { MODIFY      => 1,DEFAULT     => My::Even::more::complicated->func(),},STATE => { MODIFY      => 1,DEFAULT     => 'Concatenate()',COUNTRY => { MODIFY       => 1,required     => 0,DEFAULT      => 'Gabon',}

My :: Confusing :: Code包/模块/类会对花括号中的内容做什么.花括号是否包含代码块或哈希引用?

解决方法

这是一个哈希引用.

当你使用Module :: Foo @stuff;时,幕后发生的事情是:

BEGIN { 
    require "Module/Foo.pm";
    Module::Foo->import( @stuff );
};

通常,传递给import的参数用于请求将符号导出到命名空间中. (执行此操作的典型方法是使用标准Exporter模块中的import子例程.)但在这种情况下,模块作者编写了一个自定义导入方法,该方法采用hashref并对其进行处理.

猜你在找的Perl相关文章