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

有可能有条件地“使用bigint”与Perl?

发布时间:2020-12-15 21:12:00 所属栏目:大数据 来源:网络整理
导读:我知道我可以有条件地在Perl中使用一个模块,但是“pragmas”呢?我的测试显示,使用bigint可能比Perl中的正常数学慢得多,我只需要它来处理64位整数,所以我只想在Perl没有使用64位整数支持的时候使用它,我也是知道如何使用Config模块进行检查. 我尝试了各种各
我知道我可以有条件地在Perl中使用一个模块,但是“pragmas”呢?我的测试显示,使用bigint可能比Perl中的正常数学慢得多,我只需要它来处理64位整数,所以我只想在Perl没有使用64位整数支持的时候使用它,我也是知道如何使用Config模块进行检查.

我尝试了各种各样的事情与eval和BEGIN块,但无法找出一种方式来有条件地使用bigint.我知道我可以使用Math :: BigInt,但是对于bigint和64位的情况,我不能使用单个的codepath.

解决方法

这实际上正常工作:
use Config;
BEGIN {
  if (! $Config{use64bitint}) {
    require bigint;
    bigint->import;
  }
}

不同编译时间之间的交互是复杂的(也许我会回来尝试稍后解释),但是足够的是,由于这里没有字符串eval,所以bigint所设置的标志会持续通过文件的其余部分或阻止你把BEGIN块放在里面.

(编辑:李大同)

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

    推荐文章
      热点阅读