Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29030336
  • 博文数量: 101
  • 博客积分: 4011
  • 博客等级: 上校
  • 技术积分: 1150
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-18 10:37
个人简介

落魄青年,挨踢民工,已经转行

文章分类

全部博文(101)

文章存档

2008年(47)

2007年(54)

分类:

2007-12-18 16:43:26

1 都是引入模块,语法:
       use ModuleName;
       require ModuleName;
   ModuleName 不必加pm扩展名
 
2 区别之一,use语句是编译时引入的,require是运行时引入的。
 
 
3 区别之二,use语句所做的事情比require要多一点点,一条
         use ModuleName;
语句大致相当于
         require ModuleName;
         import  ModuleName::(@EXPORT);
上面两句的内容。
也就是说,哪怕只用 use ModuleName,当前包的命名空间都会被ModuleName中的@EXPORT中的函数和变量“玷污”,好处是使用 ModeleName中的函数和变量不不必加包前缀 Modelename::
 
4 如果要use 语句不会“玷污”当前的包命名空间,直接用
         use ModuleName () #一个空括号
就行了,这不表示不能用ModuleName的函数和变量,只是用时需要加包前缀,如
    $xyz = ModuleName::function1();
 
5 有时除了引入默认的@EXPORT中的函数和变量,还可以引入附加的函数和变量,这个列表定义在ModuleName 的@EXPORT_OK数组中。可以用
 
     use ModuleName (@EXPORT_OK的一个片段)
 
这样的方式来引入
 
6 用use能在编译时就发现问题,用use是未来的趋势。
 
-------------------------------------------------------------------------------
上面的笔记内容将随时增加修改   
 
 
阅读(3716) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~