小编And*_* A.的帖子

如何在我自己的包中重新定义 sub 但从新包中访问旧包

我有一些代码文件开头像

use my_pck;

BEGIN {
    package my_pck;
    my(@p) = ();
    foreach ( keys(%my_pck::) ) {
        push( @p, "\$$_" ) if (defined $$_);
        push( @p, "\%$_" ) if (%$_);
        push( @p, "\@$_" ) if (@$_);
    }
    # ... some extra
    ( @EXPORT = @p, Exporter::import pal ) if ( $#p >= 0 );
}
use strict;
use warnings;

package my_pck;
Run Code Online (Sandbox Code Playgroud)

这部分我无法更改(除了在“一些额外”中添加一些内容)。

所以现在其中有一个名为“my_today”的子目录,因为我需要package my_pck在任何地方都可以使用它并且在源文件中经常使用它。此方法以“YYYYMMDD”格式给出当前日期。

要检查前一天的一些测试数据,我需要重新定义此方法以也给出前一天的数据。

我试图通过重新定义它

sub my_today {
    my $date = my_pck::my_today();
    $date = my_datefunc($date, "-", 1)  # substracts …
Run Code Online (Sandbox Code Playgroud)

perl package perl-exporter

0
推荐指数
1
解决办法
104
查看次数

标签 统计

package ×1

perl ×1

perl-exporter ×1