附錄A Rust簡明教程
附錄A Rust簡明教程
Rust是一個由Mozilla主導開發的通用、編譯型編程語言。它的設計準則為“安全,并發,實用”,支持函數式,并發式,過程式以及面向對象的編程風格。——維基百科
安裝與第一個Rust程序
你可以在?https://www.rust-lang.org/en-US/downloads.html?下載到它的安裝包。當然如果你使用的是Linux,或者是Mac的操作系統,你也可以通過在終端輸入以下命令來獲取它:
curl?-sSf?https://static.rust-lang.org/rustup.sh?|?sh
Rust受到了C++、C#等多種語言的啟發,所以它們在某些部分表現的非常相似。你可以打開一個文本編輯器,輸入:
fn?main()?{????println!("這是一本超有趣的黑客筆記,使用Rust語言描述。"); }
然后記得把它保存成?*.rs?的格式,記得在保存的時候編碼選擇?UTF-8?。
變量
雖然Rust是靜態類型語言,但是它有一個被稱作類型推斷的功能。換句話說,在很多時候明確指出類型是不必要的。使用?let?就完成綁定。在Rust變量綁定和其他語言中的聲明變量有一點兒不太一樣。Rust是把值綁定在一個名字上,所以當一個變量名已經被綁定過一次的時候,你還可以再給它綁定一個新的值。甚至是不同類型的值。
在C語言中,你定義一個變量之后,可以隨意的為它賦值,譬如:
int?x?=?0;x?=?1;
但是在Rust語言中,這樣是不對的:
let?x?=?0;x?=?1;
如果你這樣做的話,你就會得到這樣的結果:
main.rs:3:2:?3:7?error:?re-assignment?of?immutable?variable?`x`?[E0384] main.rs:3??????x?=?1; ????????????????^~~~~ main.rs:3:2:?3:7?help:?run?`rustc?--explain?E0384`?to?see?a?detailed?explanation main.rs:2:6:?2:7?note:?prior?assignment?occurs?here main.rs:2??????let?x?=?0; ????????????????????^ error:?aborting?due?to?previous?error
如果你希望變量能夠像C語言那樣被使用,你應該給它加上?mut?,只要你把?let x = 0;?改成?let mut x = 0;?就可以了。
結構控制
你應該已經發現了,Rust語言中的?if?語句和別的編程語言基本上是一樣的。它的?else if?和?else?也都是可以省略的。
let?x?=?1;if?x?==?1?{????println!("變量x的值是1"); }?else?if?x?==?2?{????println!("變量x的值是2"); }?else?{????println!("變量x的值即不是1,也不是2"); }
對于循環來說,Rust語言把循環處理得更簡單了。它們分別是?loop?、?while?和?for?。?while?的情況和C語言基本保持一致。?loop?相當于你寫了:
while?true{ }
所以使用?loop?的時候要格外小心,它們都可以用?break;?和?continue;?控制。所以也不必擔心你會寫出一個死循環。
for?語句被設計的非常討人喜歡,在書中涉及了很多它的用法,其中一種常用的方法是:
for?i?in?1..5?{ ????println!("{}",?i);? }
好了,您現在已經是一名Rust程序員了。如果您希望進一步了解Rust,您可以參考它的官方文檔。
本文轉載自異步社區
原文鏈接:https://www.epubit.com/articleDetails?id=NC7E3EF9197000001A5F82FA031663E80
其他
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。