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

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

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