Rust 1.32.0 发布,新增名为 "dbg" 的宏

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Rust 发布了最新稳定版 1.32.0,如果已安装过 Rust,可通过以下方式进行升级: $ rustup update stable 如果从未安装过 Rust,请参考该页面的说明进行安装:https://www.rust-lang.org/install.html Rust 1.3...

Rust 发布了最新稳定版 1.32.0,如果已安装过 Rust,可通过以下方式进行升级:

$ rustup update stable

如果从未安装过 Rust,请参考该页面的说明进行安装:https://www.rust-lang.org/install.html

Rust 1.32.0 的更新包括功能改进、切换默认内存分配器,并新增附加功能 const请查看详细的发布说明以获取更多信息

dbg macro

功能方面的改进是新增了一个名为 "dbg" 的宏,主要用于在调试时打印输出信息使用,不仅大大优化了输出的信息,还可以让开发者避免对代码结构进行更改。

例如调试下面这段代码:

fn factorial(n: u32) -> u32 {
    if n <= 1 {
        n
    } else {
        n * factorial(n - 1)
    }
}

使用 eprintln! 进行调试,需要编写的代码如下:

fn factorial(n: u32) -> u32 {
    eprintln!("n: {}", n);
    if n <= 1 {
        eprintln!("n <= 1");
        n
    } else {
        let n = n * factorial(n - 1);
        eprintln!("n: {}", n);
        n
    }
}

而如果使用 dbg! 进行调试,代码可优化为:

fn factorial(n: u32) -> u32 {
    if dbg!(n <= 1) {
        dbg!(1)
    } else {
        dbg!(n * factorial(n - 1))
    }
}

删除 jemalloc 默认内存分配器

从 Rust 1.28 开始,Rust 就已经提供了一种选择全局分配器的方法,开始计划将默认内存分配器切换到系统分配器,但依然允许开发者通过包使用 jemalloc。在最新版本 Rust 1.32 中,这项工作终于完成了。默认情况下,开发者使用的将是系统分配器(system allocator)。

更多更新内容请查看发布公告


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

让云落地

让云落地

【美】Michael J. Kavis(迈克尔 J.凯维斯) 著 / 陈志伟、辛敏 / 电子工业出版社 / 2016-3 / 65.00元

云计算落地已成事实。从前几年的概念普及,到如今越来越多的企业将业务迁移至云上,云计算正在改变整个社会的信息资源使用观念和方式。云计算还在不断成长,技术细节也在不断变化之中。对于使用者而言,能够基于自身的业务、技术和组织需求等各方面情况,选择正确的云服务模式,是成功使用云计算最关键的技术决策之一。 《让云落地:云计算服务模式(SaaS、PaaS和IaaS)设计决策》共有 16 章,作者有意避开......一起来看看 《让云落地》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具