【发布时间】:2026-01-14 09:05:02
【问题描述】:
我在 perl 中有一个共享模块。主程序需要两个文件,第一个是共享文件(我们称之为“X”),第二个是一个“包”文件。文件“X”也使用“require”包含在“package”文件中。当我编译这个程序时,它给了我以下错误:
Undefined subroutine &main::trim called at testing.pl line 8.
我的理解是 perl 找不到 trim() 模块。如果我不包含包文件,那么这将毫无问题地运行。
谁能解释这个问题?
这些是我的代码:
主程序:testing.pl
#!/usr/bin/perl -w
use strict;
use postgres;
require "shared.pl";
trim("als");
包文件:postgres.pm
#!/usr/bin/perl
package postgres;
use strict;
use DBI;
require "shared.pl";
1;
共享文件:shared.pl
#!/usr/bin/perl
# =============
# shared module
# =============
use strict;
sub trim($)
{
}
1;
【问题讨论】:
标签: perl