加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl中关键字“no”实际上是做什么的?

发布时间:2020-12-15 22:01:08 所属栏目:大数据 来源:网络整理
导读:我的 previous question已经解决了我的问题,但让我缺乏理解. use 5.014;use warnings;use Test::More;# still has carp after no Carppackage Test0 { use Carp qw( carp ); sub new { my $class = shift; my $self = {}; carp 'good'; bless $self,$class;
我的 previous question已经解决了我的问题,但让我缺乏理解.
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');

这个测试没有通过,这意味着没有…不会做我认为的,包括取消引用符号.我已经读过perldoc no,但这似乎是相当不明智的.鉴于这段代码的结果,我会说它不完全做广告.

什么不做?什么时候和为什么要使用它?

解决方法

没有调用包的unimport(),而使用调用import(),两者都默认地跳过没有找到所需的子的情况.

然而,很少的软件包 – 实际上,大多只是编译模块 – 支持unimport().

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读