- 必須遵守的命名方案
結構(和其他類型)、枚舉(包括枚舉值)和trait(但不包括它們的函數/方法)需要以大寫字母開頭,并且不能包含任何下劃線 。
- 沒有增量運算符
沒有 i(或者i、i-- 和 --i),因為這些運算符有點混亂 。
你確定如下操作的結果嗎(尤其是在沒有指定語言的情況下)?
a[ii] = iia[i]問題在于,直到最近上述運算的實際行為還是未定義的,這意味著不同的編譯器(甚至可能是同一個編譯器的不同版本)可能會產生不同的行為 。為了解決這個問題并提高代碼的可讀性(Rust非常重視可讀性和冗長,甚至不惜多敲幾次鍵盤),Rust僅支持 i= 1,幾乎所有人都知道該表達式的意思是變量i加1,并返回最終結果 。所以,你不必知道 i實際上返回的是原始值(不是新值),而且還會加1 。
此外 , 運算符重載會使用trait,但本文不打算詳細討論 。
- 幾乎所有的東西都是表達式
你可以直接使用 if 來代替其他語言中常見的三元運算符:
let var = if something { 1 } else { 2 };循環會根據break的調用返回結果 。你可以利用它,反復重試某個操作,直到成功 。

文章插圖
變量變量通過 let 聲明,并且有作用域 。類型是可選的,Rust 非常擅長推斷類型(比 Typescript 更出色) 。
let var: usize = 1;上述變量定義了一個類型為usize的變量var(usize是一個32或64位的數字 , 具體取決于計算機架構) 。
你可以重復聲明變量 。當重復聲明某個變量時 , 之前聲明的變量就會被刪除(除非該變量被引用,在這種情況下只有引用會保留,而原始變量會被刪除) , 而且變量的類型也會改變 。
let var = 1;let var = "something";在默認情況下 , 變量是不可變的 。如果你想修改它們,則需要在 let 之后加上關鍵字 mut 。
let var = 1;var = 2; // 錯誤!不可以修改不可變的變量let mut var = 1;var = 2;
文章插圖
函數
fn main(arg: u8) -> u8 { // something arg}函數的行為幾乎與JS一模一樣 , 只不過它們并不是數據類型,而且語法上略有不同 。
參數的指定與 Typescript 類似,即key: type 。返回類型通過 -> 指定 。
有趣的是,雖然 Rust 需要分號,但如果最后一個表達式后面的分號忘寫了,它會被作為返回值(即使沒有 return 關鍵字) 。

文章插圖
If語句
if something {} else {} else if something_else {}if 語句的使用非常基本,不在此贅述 。
有一點需要注意,如非必要,使用括號實際上是錯誤的 。你可以利用括號指定執行順序:
if (something || something_else) && something_other {}如前所述,if 也可以返回一個值,而該值可用于賦值、參數、返回或其他地方 。
相關經驗推薦
- 放棄簡約風吧!過年回家這樣打扮,時髦貴氣,美得好高級
- 大地色真是秋天yyds,宋軼一身大地色高級又甜美,不止顯白還顯瘦
- 怎么從成品尺寸推算坯布幅寬
- 秦始皇如何從呂不韋手中奪權
- 為什么建議男生多穿闊腿褲?看這幾位明星就知道了,顯瘦、高級、太時尚,還提氣質!
- 女生微信網名高級冷酷 微信網名高冷霸氣冷酷女
- 自然人從什么時起享有民事權利
- 盤點微胖女生的顯瘦穿搭,掌握2個搭配要點,造型高級又有范
- 丈夫酒駕接妻子下班被抓:明天能從電視上看到我嗎?
- 春天一句話 春天一句話精選
