perl – “使用模块”后代码块的含义是什么?
发布时间:2020-12-15 22:01:03 所属栏目:大数据 来源:网络整理
导读:什么是重要的,这样的东西有什么影响(我认为它是面向对象的): use My::Confusing::Code{ CITY = { MODIFY = 1,DEFAULT = My::Even::more::complicated-func(),},STATE = { MODIFY = 1,DEFAULT = 'Concatenate()',COUNTRY = { MODIFY = 1,REQUIRED = 0,DEFAUL
什么是重要的,这样的东西有什么影响(我认为它是面向对象的):
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并对其进行处理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |