私の前の質問は私の問題を解決しました、しかし私に理解の欠如を残しました。
use 5.014;
use warnings;
use Test::More;
# still has carp after no Carp
package Test0 {
use Carp qw( carp );
sub new {
my $class = shift;
my $self = {};
carp 'good';
bless $self, $class;
return $self;
}
no Carp;
}
my $t0 = Test0->new;
ok( ! $t0->can('carp'), 'cannot carp');
このテストは合格しませんno ...
。つまり、シンボルのインポートを解除するなど、私が思うことを実行しません。私は読んperldoc no
だことがありますが、それは実際にはかなり啓蒙的ではないようです。このコードの結果を考えると、それが宣伝していることを正確に実行しているわけではないと思います。
何をしno
ますか?いつ、なぜそれを使用する必要がありますか?