新貴 Rust(1)

收藏待读

首先要明確的一點就是 rust 是系統級別的底層開發語言。與 c++ 處於同一層面。rust 有可能在將來逐步取代 C++ 在嵌入式和遊戲領域老大的地位。而且 rust 在區塊鏈技術領域也有不熟的表現

Rust 是一種注重高效、安全、並行的系統程序語言。

Mozilla將 Firefox 的命運與Rust語言捆綁起來。Rust是Mozilla主導開發的注重安全、速度和並發的系統級編程語言,最新版本為1.15。隨着Rust的成熟,Mozilla開始嘗試用Rust開發Firefox的組件,其中包括核心引擎Servo/Project Quantum。

新貴 Rust(1)

Rust VS golang

Cargo.toml 文件為包管理工具,類似於 package.json

新貴 Rust(1)

golang作為服務器語言仍然是相當不錯的選擇,不過現在已經沒有多少人還把它看成是 系統語言 了。

有關 rust 的優點以後通過代碼一一為大家介紹

首先安裝 rust 很容易,windows 環境下在官網下載 window 的安裝版本,一步一步安裝就可以。

新貴 Rust(1)

創建項目,在終端輸入

cargo new app_demo –bin

來創建一個 binary 應用

如果 cd app_demo 項目下運行 cargo run 即可,也可以運行 cargo run src/main.rs

項目結構如下圖

新貴 Rust(1)

Cargo.toml 文件為包管理工具,類似於 package.json

打開 Cargo.toml 文件查看其中信息,[dependencies]用於管理依賴,其他的就不用解釋了吧。

新貴 Rust(1)

打開 main.rs 文件,其中 main 為入口函數,這個大家應該很清楚,然後輸出「hello world」,我們已經邁出了第一步。很輕鬆吧

新貴 Rust(1)

在 rust let 定義變量為 immutable 類型

我們需要添加 mut 來將類型修改為 mutable 類型

新貴 Rust(1)

整型有兩種形式:有符號和無符號。為了理解他們的不同,我們先考慮一個4位的數,4為數能存儲-8到+7之間的值。有符號數用補碼錶示。一個無符號數,因為它不需要存儲負號,能存儲從0到+19之間的數。

固定大小類型在他們的表示中有特定的為主。有效的為大小為8,16,32和64。所以來說u32是一個無符號32位整型,i64是一個有符號64位整數。

Rust也提供了依賴底層機器的指針大小的類型。這些類型使用『size』作為分類,並且有有符號和無符號之分。有兩種類型:isize和usize。

新貴 Rust(1)
新貴 Rust(1)

簡單四則運算

新貴 Rust(1)

字符類型

新貴 Rust(1)

tuple 類型的數據,tuple 可以是不同類型數據的集合

新貴 Rust(1)

數組是這個模樣,數組中元素類型必須統一。將數組分配為棧內存中。

新貴 Rust(1)

定義一個複合的 tuple 類型變量,f 變量中包含 t 變量

新貴 Rust(1)
新貴 Rust(1)
新貴 Rust(1)
新貴 Rust(1)

如何通過佔位符{}來輸出tuple類型的數據

新貴 Rust(1)

我們需要將{} 替換為調試用的 {:?} 佔位符

新貴 Rust(1)
新貴 Rust(1)

也可以使用{:#?}來輸出帶結構變量,便於觀察變量結構

新貴 Rust(1)
新貴 Rust(1)
新貴 Rust(1)
新貴 Rust(1)

我們這裡使用到標準庫 std::mem ,這裡大家有些陌生,以後為大家詳細介紹,我們使用 mem 的 size_of_val 來計算數組所佔內存的大小。

新貴 Rust(1)

&表示引用類型變量,熟悉 c++ 一定不會對這個取值符陌生吧

新貴 Rust(1)
新貴 Rust(1)

相關閱讀

免责声明:本文内容来源于studygolang.com,已注明原文出处和链接,文章观点不代表立场,如若侵犯到您的权益,或涉不实谣言,敬请向我们提出检举。