普通人學習rust——從零到放棄 安裝和第一個程序


普通人學習rust——從零到放棄 安裝和第一個程序

環境

本文章內容基於如下環境,如若出入請參考當前環境。

rustc 1.42.0 (b8cedc004 2020-03-09)
cargo 1.42.0 (86334295e 2020-01-31)

前言

我常常認為說“Linux系統很好用”的人有兩類人,一種是大神,的確很牛B,第二種是跟風者,根本沒常用過Linux。所謂要認知一件事,就要去實踐它,即使可能得到不同與別人的結論。事實上,我已經學習rust一段時間了,也基本已經放棄了這門語言。對於我(普通人不是大神)來說,rust缺點就是:

  • 1、難以理解的語法邏輯
  • 2、怪異的語法,為了突出特點而設(很別扭)
  • 3、難於控制的內存泄漏或占用,或者說是缺少優質的第三方庫。

rust是我認為僅次於go,不想接觸的語言。本系列文章所有內容不一定有正確性,所理解僅為個人理解,不懂之處請見諒,因為我也可能不懂,基於以上三點。

優點

說完缺點,就說為什么要選擇rust

  • 1、接近c/cpp的性能
  • 2、內存安全性

安裝

離線安裝包下載地址[https://forge.rust-lang.org/infra/other-installation-methods.html],這里僅於windows安裝為例,選擇x86_64-pc-windows-gnu或x86_64-pc-windows-msvc其中一個下載安裝,如果安裝成功運行錯誤就選擇另外一個。

運行

查看rustc版本

rustc -V

查看cargo版本

cargo -V

第一個程序

新建main.rs文件

fn main(){
    println!("這是我的第一個rust程序!!😥");
}

編譯

rustc main.rs

運行

main.exe

結果

這是我的第一個rust程序!!😥

fnfunction的簡寫,main()為程序入口函數。吐槽:其他關鍵字全寫,就function要簡寫成fn,要么全寫要么簡寫!這里需要注意的是println!println,多了感嘆號!,后綴不帶感嘆號為普通函數,帶感嘆號的為宏函數,rust不存在println普通函數。

錯誤示例

fn main(){
    println("這是我的第一個rust程序!!😥");
}

編譯異常

error[E0423]: expected function, found macro `println`
 --> main.rs:2:5
  |
2 |     println("這是我的第一個rust程序!!😥");
  |     ^^^^^^^ help: use `!` to invoke the macro: `println!`

error: aborting due to previous error

For more information about this error, try `rustc --explain E0423`.

參考資料

這里列舉一些參考網站,方便讀者學習參考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM