19 Feb 2023
https://kazan.tw/posts/rust-learning-part4/
前情提要上次我們已經大略討論完 Rust 最重要的概念:所有權,這次要討論的則是結構體(structure),是很常見的資料結構。如果學過 C/C++ 大概會很有印象。 結構體結構體與元組類似,兩者都可以擁有多種數值,但結構體的每個資料部份都需要被命名以表達意義;這同時允許我們不用依賴資料的順序存取結構體實例的值。 如果要定義結構體,使用 struct 關鍵字並命名,然後在 {
16 Feb 2023
https://kazan.tw/posts/rust-learning-part3/
前情提要接續上篇,我們想要讓函式使用變數的數值,同時不希望它取得所有權,也嘗試透過回傳元組解決,但這樣還是太繁瑣,很不 Rust(o到底該如何同時達到乾淨而且不失去變數所有權呢? 這就是今天要討論的第一件事:引用與借用。 引用(Reference)在前面的例子,我們會失去所有權是因為把變數傳遞給函式,但若是只提供數值呢? 這就是引用的作用:追蹤、存取特定記憶體位址的資訊,同時該位址仍被其他變數擁有
11 Feb 2023
https://kazan.tw/posts/rust-learning-part2/
前情提要上次學到了 Rust 的基本概念,這次則進入 Rust 最大的特色————所有權。因為比較難理解,我這次打算分上下篇來紀錄,絕對不是寫不完拖更。 注意:這個概念一定要理解,才能更有效的利用 Rust! 所有權是什麼?我們在學習任何語言時,都會需要知道它們如何使用與管理記憶體的資源,以免造成浪費或者更糟糕的情形。一般而言會有下列兩種流派: 垃圾回收機制(garbage collector)
06 Feb 2023
https://kazan.tw/posts/rust-learning-part1/
前情提要上次我們學習如何安裝 Rust,以及利用 Cargo 管理 Rust 專案,今天則是要介紹 Rust 的變數概念、基本資料型別、函式以及控制流程,也就是常見的程式設計概念。 變數與可變性相信大家對「變數(variable)」已經有基本概念,今天特別要說明的是在 Rust 中變數的特性。 變數首先建立一個專案叫做 variables,並且編輯 src/main.rs: 123456fn ma
04 Feb 2023
https://kazan.tw/posts/rust-learning-prologue/
前情提要因為 jserv 老師今年預計會在 Linux 系統核心課程教學 Rust,加上近幾年許多老牌 CLI 程式開始以 Rust 改寫,「用 Rust 開發系統程式」似乎成為主流了,於是在傳統的 C 之外,我也決定開始學習 Rust,反正技多不壓身www為了避免忘記學到的東西,並且分享學習心得,我決定把學習的過程寫成文章放上來,便開始這系列的文章(同時也是逼自己更新,不然我真的太容易怠惰了)。