大多數程式都會相依於一些函式庫。手動管理這些相依項目可能會很麻煩。幸運的是,Rust 生態系標準配備就有cargo!cargo 可以幫專案管理相依項目。
在 Rust 裡,你常會看到外部套件被稱為「crate」。crate 是 Rust 的編譯單元。一個 crate 可以編譯成執行檔,也可以編譯成函式庫。
大多數情況下,新增外部相依項目就跟在Cargo.toml檔案裡加一行一樣簡單。
這個練習已經幫你加好了 enum-iterator 和 int-enum 這兩個相依項目。
如果你想用 Raspberry Pi 打造一些東西,大概會用到_電阻器_。 在這個練習裡,你需要知道關於它們的兩件事:
為了解決這個問題,製造商會在電阻器上印上以色碼標示的色環,來表示它們的電阻值。 每個色環都有一個位置和一個數值。
電阻器的前 2 個色環有一套簡單的編碼方式:每種顏色都對應到單一個數字。
在這個練習中,你將建立一個實用的程式,讓你不用記住這些色環的數值。
這些顏色的編碼如下:
這個練習的目標是建立一個能夠:
第一項任務會需要外部的 crate int-enum,第三項任務則會需要 enum-iterator。
這兩個 crate 都已經包含在這個練習的 Cargo.toml 裡了。
記得查看這些 crate 的文件,了解怎麼使用它們。
你可以研究 Enum 的 Debug trait 預設實作,來完成第二項任務。
記憶法把顏色對應到數字,而這些數字以陣列儲存時,剛好會對應到它們在陣列中的索引:Better Be Right Or Your Great Big Values Go Wrong。
更多關於電阻色碼的資訊,可以在維基百科的電子色碼條目中找到。