15
Q
什麼是前奏?
A
回答
13
生鏽,爲了使用一個符號,你必須:
- 已在當前範圍內定義的符號
- 已經通過
use
指令進口在當前範圍內的符號:use std::mem;
std::mem::replace
不過,有些極少數符號可沒有這樣的動作來使用:
Option
或Copy
! 這是由於Rust prelude。
許多特徵,類型和功能被認爲是如此頻繁地使用,因此它不需要它們的使用需要明確地每次輸入必要的符號。這得以實現歸功於由編譯器拍攝的兩個隱式操作:
- 在每個板條箱的根,編譯器噴射的每個模塊中的隱式
extern crate std;
- ,編譯器噴射的隱式
use std::prelude::v1::*;
(現在)
std::prelude::v1
只是一個常規模塊,它使用pub use ...
語法重新導出那些常用符號。它的確切內容可以在here找到。
其他一些庫或標準庫的連子組件還定義了prelude
模塊,你可以用相同的水珠導入語法導入:use xxx::prelude::*;
。與std::prelude
不同,但是這些並不是編譯器特有的,因此需要顯式導入。
編譯器是不可知的前奏的確切內容,因此,如果一個是用自己更換std
箱(例如,在嵌入式開發),一會又決定什麼進入他們的std::prelude::v1
模塊。
相關問題
- 1. 什麼是獨奏編程?
- 2. Haskell前奏藏匿,UNDO?
- 3. 哈斯克爾 - 從前奏
- 4. 什麼是一些獨奏開發者編程方法?
- 5. 什麼是註冊前綴?
- 6. 什麼是DOCTYPE前SYSTEM「ex.dtd」
- 7. 什麼是表格前綴?
- 8. GlassFish v3前奏 - 管理問題
- 9. 多重積分,並從數字 - 前奏
- 10. Data.Map合格的進口與前奏
- 11. 製作和運行,在前奏
- 12. 不明確的模塊名稱'前奏」
- 13. 如何回到前奏>在ghci
- 14. removeFromSuperview()並不總是奏效
- 15. 什麼::向前
- 16. 鎖前綴的範圍是什麼?
- 17. 什麼是PocoCapsule當前狀態?
- 18. 什麼是C++的當前狀態AMP
- 19. 什麼是嘗試:提前退出?
- 20. Javascript中的當前元素是什麼?
- 21. Web服務和SOA之前是什麼?
- 22. 什麼是前置攝像頭的deviceUniqueID?
- 23. 什麼是以前用過的`auto`?
- 24. Android的前景究竟是什麼?
- 25. CSS前綴的用途是什麼?
- 26. 是什麼邊距和-webkit餘裕前
- 27. 什麼是r-前綴的函數?
- 28. Shiro當前的主題是什麼?
- 29. C#中字符串前的@是什麼?
- 30. 什麼是C中的前向引用?
@LukasKalbertodt:好的,我已經開始用'vec!','panic!'......來寫答案了,但是找不到它們來自哪裏。我會刪除它。 –
[此RFC](https://github.com/rust-lang/rfcs/pull/890)建議將前奏功能添加到用戶箱。它已經關閉了一段時間,但可能會在未來恢復。 –
@MatthieuM。感謝您的明確解釋。看起來'println!'宏不是來自'std :: prelude'? –