附錄A Rust簡明教程

      網友投稿 1067 2022-05-30

      附錄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?相當于你寫了:

      附錄A Rust簡明教程

      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小時內刪除侵權內容。

      上一篇:微軟9月份月度安全漏洞預警
      下一篇:「免費開源」基于Vue和Quasar的crudapi前端SPA項目實戰之表關系(六)
      相關文章
      亚洲国产AV无码专区亚洲AV | 亚洲专区一路线二| 亚洲成AV人片在线观看| 狠狠亚洲狠狠欧洲2019| 亚洲精品专区在线观看| 亚洲精品在线视频| 中文字幕亚洲激情| 国产亚洲精aa成人网站| 亚洲综合另类小说色区色噜噜| 亚洲国产成人精品久久久国产成人一区二区三区综 | 亚洲国产精品毛片av不卡在线| 色婷婷亚洲一区二区三区| 国产精品国产亚洲区艳妇糸列短篇| 亚洲国产精品精华液| 久久精品国产亚洲AV未满十八| 在线亚洲精品视频| 亚洲精品成人网久久久久久| 日韩亚洲变态另类中文| 亚洲人成在线播放网站| 亚洲AV综合色区无码另类小说| 亚洲AV无码一区二区二三区软件| 亚洲av日韩av高潮潮喷无码| 亚洲福利在线观看| 亚洲福利视频一区二区三区| 亚洲免费观看在线视频| 在线亚洲高清揄拍自拍一品区| 亚洲国产精品无码中文lv| 亚洲AⅤ视频一区二区三区| 亚洲精品456播放| 黑人精品videos亚洲人| 亚洲永久永久永久永久永久精品| 亚洲欧洲尹人香蕉综合| 亚洲久悠悠色悠在线播放| 亚洲国产精品无码久久| 亚洲精品视频久久久| 久久亚洲精品中文字幕三区| 久久精品国产亚洲精品2020| 亚洲精品国产国语| 亚洲成av人片天堂网老年人| 亚洲一区爱区精品无码| 久久狠狠高潮亚洲精品|