Skip to content

Latest commit

 

History

History
32 lines (21 loc) · 1.51 KB

feature.md

File metadata and controls

32 lines (21 loc) · 1.51 KB

Table of Contents generated with DocToc

条件编译 Features

Cargo Feature 是非常强大的机制,可以为大家提供条件编译和可选依赖的高级特性

作用

控制代码流程: 例如想在某些情况下启动软件后只执行打印b的逻辑,而不执行打印a的逻辑,只需要不编译 println!("a"); 就可以实现

减少编译任务量: 我们经常会遇到在使用第三方库的时候,他很大,导致编译的时间比较长,这时候就可以把自己用不到的 feature 给关掉,尽可能地去减少代码编译时间

隐藏不稳定代码: 比如我们在编写代码的时候,经常会有还没有完成,但是正在编辑的功能,就可以 用一个 unstable 的 feature 去包含这些代码,这样在实际使用的时候,就不会用到这些代码。

实验性的代码生成或优化: 在某些情况下,编译器团队可能会为 Rustc 提供实验性的优化或代码生成策略,而这些可以通过特性标志来启用

参考