Rust 以安全、效能與現代化設計聞名,但同時也因「所有權」與「借用」的獨特機制讓初學者感到卻步。本系列將以 30 天為期,從零開始理解 Rust 的語法特色、所有權模型、錯誤處理方式與模組化設計。過程中不僅會學習到核心觀念,也會透過實作小專案累積經驗,包含數字遊戲、文字統計工具等,最終完成一個CLI 專案。
今天的目標很簡單:搞清楚Rust是什麼、將其安裝好,然後跑出第一個程式。 1. Rust的定位Rust是一門強調效能與記憶體安全的系統程式語言。它的效能接近 C...
今天學習的是Rust的變數特性,包含不可變性、可變性(mut)以及遮蔽(shadowing)。這是Rust其中一個跟其他語言不一樣的部分,這個預設禁止的特色讓我...
Rust是一個靜態型別語言,但同時支援型別推導。這代表在編譯時,所有變數的型別都是確定的,不能像Python那樣能隨意更改。 1. 整數型別 (Integer)...
Rust的函數用fn宣告,它強調「回傳值」與「表達式」的使用方式。此外,Rust也建議函數名稱使用 snake_case(底線小寫)。 1. 基本函數 fn m...
Rust 的控制流程包含條件判斷與各種迴圈,另外還有強大的 match 語法。Rust 特別強調「表達式」,因此在控制流程中也能直接把結果當值使用,這和 C/C...
Rust 為了避免記憶體錯誤,引入所有權 (ownership) 系統。 Rust 的所有權有三大規則: 每個值 (value) 在任一時間點只能有一個擁有者...
1. 為什麼需要借用昨天學到:一個變數的值被移動 (move) 後,原變數就不能再用。 fn main() { let s1 = String::fro...
1. 什麼是切片切片 (slice) 是一種不擁有資料所有權的型別,允許你借用集合(例如字串或陣列)中一段連續區間的內容。這和昨天學到的借用概念直接相關。 2....
1. &str:字串切片&str 是字串切片,代表指向一段 UTF-8 編碼文字的參考,通常來自字串常值或 String 的借用,內容不可變。範...
1. Tuple(元組)元組是一組可以包含不同型別的資料集合,使用小括號 ()。可以用索引存取元素,或是解構 (destructuring)。 fn main(...