![](/img/trans.png)
[英]What's the difference between extern fn and extern “C” fn in Rust?
[英]What's the difference between use and extern?
我是 Rust 的新手。 我認為use
用於將標識符導入當前范圍,而extern
用於聲明外部模塊。 但是這種理解(可能是錯誤的)對我來說沒有任何意義。 有人可以解釋一下為什么 Rust 有這兩個概念以及使用它們的合適情況是什么?
extern crate foo
表示您要鏈接外部庫並將頂級 crate 名稱帶入范圍(相當於use foo
)。 從 Rust 2018 開始,在大多數情況下, 您將不再需要使用extern crate
,因為 Cargo 會通知編譯器存在哪些 crate。 (有一兩個例外)
use bar
是引用完全限定符號的簡寫。
理論上,該語言不需要use
——您總是可以完全限定名稱,但是鍵入std::collections::HashMap.new(...)
會變得非常乏味! 相反,您只需鍵入use std::collections::HashMap
一次,然后HashMap
將引用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.