Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我以前从未DOES在 Perl 程序中见过,但它在通用文档中。
DOES
不过,我不完全理解DOES和之间的区别ISA。规范谈到了角色,可能通过聚合、委托和模拟来完成。我在 Perl 中知道的唯一一种类关系是通过 @ISA 数组(或通过使用parentor base)继承,我认为角色仅适用于 Moose 等。该文件还说,大部分时间DOES和ISA将是同一件事。
ISA
parent
base
你能举个例子在哪里返回不同DOES的ISA值吗?这两种方法之间的实际区别是什么?
当你使用角色时。UNIVERSAL::DOES行为与 相同UNIVERSAL::isa,但 Moose、Mouse 和 Moo 都DOES在其对象类上提供方法,这些方法对于使用给定角色的类返回 true。
UNIVERSAL::DOES
UNIVERSAL::isa