Perl 更新并使用包中的变量

Perl 更新并使用包中的变量,perl,Perl,我有以下包裹: 打包我的::内容; 我们的$new=undf; 我们的$content='content start'。$new'content-end'; 1. 以及以下脚本: 使用我的::内容; 使用警告; 严格使用; $My::Content:new='++test++'; 打印$My::Content:Content; 但结果是“内容开始内容结束”。正如我从这里了解到的,包变量$content是在编译时设置的,并且$new值被视为未定义的,不管以后的变量更新如何。是否可以在计算$co

我有以下包裹:

打包我的::内容;
我们的$new=undf;
我们的$content='content start'。$new'content-end';
1.
以及以下脚本:

使用我的::内容;
使用警告;
严格使用;
$My::Content:new='++test++';
打印$My::Content:Content;
但结果是“内容开始内容结束”。正如我从这里了解到的,包变量
$content
是在编译时设置的,并且$new值被视为未定义的,不管以后的变量更新如何。是否可以在计算$content之前设置$new值?

因此,我希望看到'content start++test++content end'

否,但将
content
作为一个函数,它可以在使用点重新计算

package My::Content;

our $new = undef;
sub content { '<header>content-start'.$new.'content-end</header>' }
use My::Content;
use warnings;
use strict;

$My::Content:new = '++test++';

print My::Content:content;