3 回答
潇潇雨雨
TA贡献1833条经验 获得超4个赞
首先, Perl 里面是没有实在 "类" ( Class ) 和 "对象" ( Object ) , 一切都是 "引用" ( Reference ) .
不过在写法和架构上很像 OO 而己. 所以, 只要你的写法合乎 "引用" 的基础, 那就是一句对的指令. 这个概念很重要.
a. File::Basename(后面接::dirname) 是直接调用类的方法. 意义在於, 你不需要先从类得到对像才能呼叫这个方法
b.File::Spec->catfile($oldname,$newname) 这是用 File::Spec 的类, 即制了个匿名的对像, 然後调用其方法.
c. use Path::Class; 首先宣告要使用 Path::Class 这个类
my $dir=dir( qw(Users fred lib)); 从 Path::Class 这个类中呼叫 dir() 这个方法构造了 $dir 这个对像
my $subdir=$dir->subdir('perl 5'); 再从 $dir 这个对像中, 调用 subdir() 这个 object method, 最後将结果回传至 $subdir
Perl 里面很多模块都同时提供 oo style 和 function style 两种介面, 要怎麼用, 就只看你觉得怎样写得舒服. 当然你也得看清楚模块的说明, 应该怎麼用和甚麼时机用. 但还是那一句, 只要是合乎 "引用" 的基础, 那就行了.
- 3 回答
- 0 关注
- 688 浏览
添加回答
举报
0/150
提交
取消