我正在使用"如何在Perl中修补实例方法?"的开头给出的技术修补程序包..我遇到的问题是原始子例程使用了一个包级my变量,修补后的子例程似乎无法通过完整路径规范或隐式使用来访问.
my
有没有办法以这种方式获取用于修补子例程的数据范围?
您可以使用PadWalker模块获取词法.邪恶,但它的工作原理.
不.你误解的是它们不是封装范围.根据定义,词汇变量仅限于其词法范围,换句话说,它所在的块.