我看到一些包在 readme 中有这种话,添加下面的语句到 root 文件中。
extern crate glob;
但直接使用 use 关键字也能使用外部依赖的内容,这只是为了在没有添加依赖时,给编译提示吗?
1
共 4 条评论, 1 页
我看到一些包在 readme 中有这种话,添加下面的语句到 root 文件中。
extern crate glob;
但直接使用 use 关键字也能使用外部依赖的内容,这只是为了在没有添加依赖时,给编译提示吗?
评论区
写评论谢谢
--
👇
苦瓜小仔:
首先阅读 Reference 的资料:
https://doc.rust-lang.org/reference/items/extern-crates.html
https://doc.rust-lang.org/reference/names/preludes.html#extern-prelude
官方论坛很多类似的提问:
https://users.rust-lang.org/t/usage-of-extern-crate/73619/8
https://users.rust-lang.org/t/does-extern-crate-serve-any-purpose-in-the-2021-edition/73667/5
简单来说,它是 Rust 引入库的一种方式,但现在除了少数情况,并不主张显式使用。
Cargo.toml 的 depencies 表让你无需再写一遍 extern crate (这是 2018 edition 改变的)。
少数情况下必须使用 extern crate 比如(假设在 root 模块声明):
extern crate a as b
给引入的依赖一个全局别名extern crate self as name
给当前项目一个全局别名#[macro_use] extern crate a
全局引入依赖中所有宏首先阅读 Reference 的资料:
https://doc.rust-lang.org/reference/items/extern-crates.html
https://doc.rust-lang.org/reference/names/preludes.html#extern-prelude
官方论坛很多类似的提问:
https://users.rust-lang.org/t/usage-of-extern-crate/73619/8
https://users.rust-lang.org/t/does-extern-crate-serve-any-purpose-in-the-2021-edition/73667/5
简单来说,它是 Rust 引入库的一种方式,但现在除了少数情况,并不主张显式使用。
Cargo.toml 的 depencies 表让你无需再写一遍 extern crate (这是 2018 edition 改变的)。
少数情况下必须使用 extern crate 比如(假设在 root 模块声明):
extern crate a as b
给引入的依赖一个全局别名extern crate self as name
给当前项目一个全局别名#[macro_use] extern crate a
全局引入依赖中所有宏好的谢谢
--
👇
HC97: 外部预导入包
似乎是版本问题,现在已经不需要了
外部预导入包
似乎是版本问题,现在已经不需要了