(歷經(jīng)200多次修改 镰吵,只為更好的內(nèi)容)
目錄:
0.試用rust
- 安裝Rust
- 安裝VScode編輯器及語(yǔ)言服務(wù)器
- 安裝調(diào)試工具和插件
- 建立項(xiàng)目并進(jìn)行調(diào)試設(shè)置
- 附錄:rustlings的使用
〇淌山、試用Rust
如果你只是想試試Rust的語(yǔ)法,請(qǐng)點(diǎn)擊(手機(jī)也可以)
Hello World - 通過(guò)例子學(xué) Rust?rustwiki.org
打開(kāi)后如下,代碼塊中的代碼可以修改巧涧,點(diǎn)擊代碼塊右上角三角形圖標(biāo)運(yùn)行。
一遥倦、安裝Rust
- 下載Rust安裝工具
- 使用鏡像加速Rust安裝
- 安裝Rust(兩種工具鏈可供選擇)
- 安裝標(biāo)準(zhǔn)庫(kù)源碼
- 使用鏡像加速Rust包下載
- 設(shè)置Rust包環(huán)境變量
1.下載rustup-init.exe(Rust安裝工具)
點(diǎn)擊下載rustup-init?win.rustup.rs
2. 使用鏡像加速rustup安裝
打開(kāi)Powershell(Win+X +A)執(zhí)行(執(zhí)行完不要關(guān)閉谤绳,后面還會(huì)多次用到):
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">[environment]::SetEnvironmentvariable("RUSTUP_DIST_SERVER", "https://mirrors.ustc.edu.cn/rust-static"
, "User")
[environment]::SetEnvironmentvariable("RUSTUP_UPDATE_ROOT", "https://mirrors.ustc.edu.cn/rust-static/ rustup", "User")
</pre>
參考鏈接:https://http://lug.ustc.edu.cn/wiki/mirrors/help/rust-static
3. 安裝Rust:打開(kāi)rustup-init.exe
如果出現(xiàn)安裝程序未經(jīng)微軟驗(yàn)證,點(diǎn)擊install anyway(立即安裝)即可袒哥。
[圖片上傳失敗...(image-ec24b7-1602307315541)]
安裝有2種選擇缩筛,gnu或者msvc工具鏈
- gnu(本文使用MinGW-w64)占用空間小(500M)堡称,對(duì)于初步的rust使用足夠了瞎抛。
- msvc(本文使用Visual Studio Build Tools,包含msvc却紧,clang等)占用空間大(2G)桐臊。
已經(jīng)安裝了Visual Studio的選擇msvc,已經(jīng)有MinGW-w64或者msys2晓殊,或者不想占用太多空間的使用gnu断凶。
更多區(qū)別見(jiàn)這個(gè)討論
gnu依次輸入(注意每行需回車執(zhí)行):
- 2
- x86_64-pc-windows-gnu
- nightly(想用最新的功能就用nightly(每夜版)砚著,也可以選擇stable(穩(wěn)定版))
- 一路回車即可,直到看到正在下載中(有kb/s的字樣)
msvc依次輸入:
- 2
- x86_64-pc-windows-msvc
- nightly(想用最新的功能就用nightly(每夜版)痴昧,也可以選擇stable(穩(wěn)定版))
- 一路回車即可稽穆,直到看到正在下載中(有kb/s的字樣)
這里只是安裝了Rust,這兩種工具鏈到第三部分再下載安裝赶撰。
Rust卸載:
rustup self uninstall
打開(kāi)Rust本地文檔:
rustup doc
Rust中文文檔地址:Rust 程序設(shè)計(jì)語(yǔ)言 簡(jiǎn)體中文版
4. 安裝標(biāo)準(zhǔn)庫(kù)源碼
語(yǔ)言服務(wù)器需要源碼舌镶,打開(kāi)powershell執(zhí)行:
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
rustup component add rust-src
</pre>
5. 使用鏡像加速cargo包下載:
打開(kāi)Powershell執(zhí)行:
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
"[source.crates-io]
registry = 'https://github.com/rust-lang/crates.io-index'
replace-with = 'ustc'
[source.ustc]
registry = 'https://mirrors.ustc.edu.cn/crates.io-index/'
"|Out-File -Encoding utf8 $home\.cargo\config
</pre>
腳本在用戶目錄.cargo目錄下新建了文件config,用中科大鏡像加快cargo包下載豪娜。
cargo類似于npm餐胀,是 Rust 的構(gòu)建系統(tǒng)和包管理器。
參考鏈接:https://http://lug.ustc.edu.cn/wiki/mirrors/help/rust-crates
6. 設(shè)置cargo環(huán)境變量(以后的rustup可能會(huì)自動(dòng)設(shè)置)
打開(kāi)Powershell執(zhí)行:
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">cargo_path = path += path,"User")
</pre>
二瘤载、安裝VScode編輯器及語(yǔ)言服務(wù)器
- 安裝VSCode(當(dāng)前最流行的代碼編輯器)
- 安裝語(yǔ)言服務(wù)器(有兩種可供選擇)
- 安裝人工智能補(bǔ)全插件TabNine
1??. 安裝VSCode
https://http://code.visualstudio.com/?code.visualstudio.com
2??. 安裝語(yǔ)言服務(wù)器
有2種選擇否灾,推薦rust-analyzer
- rls(rust language server)安裝簡(jiǎn)單(新手推薦,安裝后還是可以再安裝rust-analyzer)
- rust-analyzer(官方維護(hù)的rls 2.0)安裝會(huì)多幾個(gè)步驟(需要安裝node.js鸣奔,需要下載語(yǔ)言服務(wù)器墨技,需要在vscode的setting.json中進(jìn)行設(shè)置)
可以參考
PrivateRookie:VSCode 使用 rust-analyzer?zhuanlan.zhihu.com
Rust Analyzer:一款旨在帶來(lái)優(yōu)秀IDE體驗(yàn)的編譯器?cloud.tencent.com(一)路線:rls
- 安裝rls
安裝語(yǔ)言服務(wù)器惩阶,執(zhí)行
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
rustup component add rls rust-analysis
</pre>
2.安裝Rust(rls)插件
點(diǎn)擊下面的鏈接,打開(kāi)網(wǎng)頁(yè)后點(diǎn)擊install按鈕扣汪,這會(huì)打開(kāi)vscode断楷,然后install即可
(二)路線:rust-analyzer
1. 安裝node.js
后續(xù)的rust-analyzer需要安裝node.js,下載地址:
https://http://nodejs.org/dist/v12.16.0/node-v12.16.0-x64.msi?nodejs.org
2. 下載rust-analyzer
點(diǎn)擊鏈接下載語(yǔ)言服務(wù)器rust-analyzer-windows.exe
rust-analyzer release?github.com
下載速度慢的話崭别,可以使用2020年5月11日的版本(使用百度網(wǎng)盤下載)冬筒,然后再慢慢下載新版本
鏈接: https://http://pan.baidu.com/s/1jY0qhtxu0lSrerdpCSdDiw 提取碼: v3py
安裝和使用說(shuō)明還可以參考(推薦完整完成后觀看,有很多有用的功能茅主,文末也有鏈接):
https://http://github.com/rust-analyzer/rust-analyzer/blob/master/docs/user/features.md
PrivateRookie:VSCode 使用 rust-analyzer
3. 安裝rust-analyzer插件
- a. 移動(dòng) rust-analyzer-windows.exe
把前面下載的rust-analyzer-windows.exe放到"C:/Users/你的用戶名/.cargo/bin/文件夾下(注意:替換你的用戶名舞痰。)
- b. 安裝rust-analyzer插件
點(diǎn)擊下面的鏈接,打開(kāi)網(wǎng)頁(yè)后點(diǎn)擊install按鈕暗膜,這會(huì)打開(kāi)vscode匀奏,然后install即可
rust-analyzer - Visual Studio Marketplace?marketplace.visualstudio.com
安裝后出現(xiàn):沒(méi)有找到語(yǔ)言服務(wù)器,是否下載学搜?點(diǎn)擊Cancel(下一步手動(dòng)設(shè)置)
[圖片上傳失敗...(image-ea5ea8-1602307315541)]
- c. 插件設(shè)置語(yǔ)言服務(wù)器路徑
vscode中按下F1,輸入open settings论衍,選擇圖中無(wú)Default字樣的
在setting.json最后一行添加語(yǔ)言服務(wù)器的路徑瑞佩,注意替換[你的用戶名]
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">"rust-analyzer.serverPath": "C:/Users/你的用戶名/.cargo/bin/rust-analyzer-windows.exe",</pre>
3??. 安裝TabNine插件(rls和rust-analyzer都推薦安裝)
這是一個(gè)人工智能補(bǔ)全工具,會(huì)給出很多代碼補(bǔ)全提示坯台,很多時(shí)候只需要一直Tab
TabNine - Visual Studio Marketplace?marketplace.visualstudio.com
后面四.2部分會(huì)講到如何激活Rust的人工智能補(bǔ)全炬丸。
三、安裝調(diào)試工具和插件
如果你不進(jìn)行斷點(diǎn)調(diào)試(或不知道它)蜒蕾,只需要安裝調(diào)試工具稠炬,不需要安裝插件。
- gnu調(diào)試工具和插件
- msvc調(diào)試工具和插件
根據(jù)安裝rust時(shí)的選項(xiàng)咪啡,gnu和msvc工具鏈二選一首启。
(一)路線:gnu工具鏈
這里我們選擇簡(jiǎn)單的mingw-w64,還可以選擇msys2等撤摸。
1. 安裝MinGW-w64
- 下載MinGW-w64
點(diǎn)擊下載MinGW-w64?nchc.dl.sourceforge.net
- 設(shè)置選項(xiàng)(64位)
[圖片上傳失敗...(image-f3515f-1602307315541)]
- 安裝并設(shè)置環(huán)境變量(毅桃!請(qǐng)使用默認(rèn)路徑安裝,否則請(qǐng)手動(dòng)設(shè)置環(huán)境變量)
使用powershell設(shè)置環(huán)境變量
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">mingw_path = ls mingw_path = path += path, "User")
</pre>
我們要用的是MinGW-w64中的gdb調(diào)試工具
32位或詳細(xì)設(shè)置請(qǐng)參考此文:C語(yǔ)言關(guān)注:MinGW-w64安裝教程——著名C/C++編譯器GCC的Windows版本
2. 安裝插件Native Debug(gnu工具鏈)
安裝步驟同rust-analyzer插件
(二)路線:msvc工具鏈
- 下載安裝Visual Studio 2019 生成工具(build tools)
Thank you for downloading Visual Studio - Visual Studio?visualstudio.microsoft.com
運(yùn)行后准夷,選擇c++ 生成工具钥飞,安裝即可
[圖片上傳失敗...(image-f43d56-1602307315541)]
如果你已經(jīng)安裝了Visual Studio,就無(wú)需安裝build tools衫嵌,
直接在工具——獲取工具和功能中读宙,勾選c++桌面開(kāi)發(fā),安裝即可
[圖片上傳失敗...(image-8dd0fd-1602307315541)]
2. 安裝插件C/C++
C/C++ - Visual Studio Marketplace?marketplace.visualstudio.com
還有一個(gè)CodeLLDB插件楔绞,安裝之后就不需要安裝上面兩類工具鏈和插件(需要python3.5+)结闸,但是安裝插件之后下載它的依賴項(xiàng)時(shí)非常慢掖棉,網(wǎng)速快的人可以試試。
四膀估、建立項(xiàng)目并進(jìn)行調(diào)試設(shè)置
- 創(chuàng)建項(xiàng)目并打開(kāi)
- 激活TabNine對(duì)Rust的補(bǔ)全
- 進(jìn)行項(xiàng)目的調(diào)試設(shè)置(使用斷點(diǎn)調(diào)試)
- 試驗(yàn)調(diào)試功能(使用斷點(diǎn)調(diào)試)
- F5一鍵運(yùn)行
1 .創(chuàng)建項(xiàng)目并在VSCode里打開(kāi)
比如hello_world幔亥,以測(cè)試調(diào)試功能
- 在vscode中按下 **Ctrl + ` **(鍵盤Tab上面的鍵)打開(kāi)powershel
- 切換到你想創(chuàng)建項(xiàng)目的目錄(比如D:)
- 使用cargo創(chuàng)建項(xiàng)目(否則vscode會(huì)提示缺少Cargo.toml文件)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">cd d:
cargo new hello_world
</pre>
- 使用Open Folder按鈕打開(kāi)你的hello_world目錄
- 單擊列表中的main.rs文件,打開(kāi)它
第1部分操作https://www.zhihu.com/video/1180629229510811648
2. 激活TabNine對(duì)Rust的補(bǔ)全
TabNine的人工智能補(bǔ)全察纯,需要在相應(yīng)編程語(yǔ)言的文件里編輯模式下輸入TabNine::sem打開(kāi)
[圖片上傳失敗...(image-28513-1602307315541)]
這樣.rs中文件輸入后帕棉,會(huì)打開(kāi)Rust的人工智能補(bǔ)全
如果影響性能,可以輸入TabNine::nosem關(guān)閉
如果你使用的是rust-analyzer饼记,TabNine還會(huì)自動(dòng)安裝rls和racer等
3. 進(jìn)行項(xiàng)目的調(diào)試設(shè)置(不使用斷點(diǎn)調(diào)試請(qǐng)?zhí)^(guò)):
- 打開(kāi)調(diào)試窗口(左側(cè)昆蟲(chóng)圖標(biāo))
- 點(diǎn)擊設(shè)置圖標(biāo)(齒輪)
- 選擇彈出的GDB(msvc為)
- 修改launch.json中的target項(xiàng)(msvc為program項(xiàng))香伴,并添加 preLaunchTask項(xiàng)
a. 路線:gnu
- 選擇彈出的GDB
- 修改launch.json中的target項(xiàng),并添加 preLaunchTask項(xiàng)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">"target": "./target/debug/${workspaceFolderBasename}.exe",
"preLaunchTask": "build",
</pre>
b. 路線:msvc
- 選擇彈出的c++ windows
- 修改launch.json中的program項(xiàng)具则,并添加 preLaunchTask項(xiàng)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">"program": "./target/debug/${workspaceFolderBasename}.exe",
"preLaunchTask": "build",
</pre>
兩種路線都需要VSCode自動(dòng)生成tasks.json(選擇從template生成—>others)
- 修改tasks.json中的label項(xiàng)和command項(xiàng)為
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">"label": "build",
"command": "cargo build",</pre>
第2部分操作https://www.zhihu.com/video/1180776456249159680
4. 修改main.rs的內(nèi)容即纲,并在每行前點(diǎn)擊出紅點(diǎn)(斷點(diǎn)),以方便觀察調(diào)試功能(不使用斷點(diǎn)調(diào)試請(qǐng)?zhí)^(guò))
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">fn main() { let mut a = 0; a = 1; a = 5; a = 7; println!("Hello, world!"); } </pre>
第3部分操作https://www.zhihu.com/video/1180631885650321408
Tip:VSCode調(diào)試時(shí)博肋,把鼠標(biāo)挪動(dòng)到變量上面低斋,可以顯示當(dāng)前變量值。圖中把鼠標(biāo)移動(dòng)到實(shí)例self上匪凡,懸浮窗顯示了self的值
[圖片上傳失敗...(image-f5aba-1602307315540)]
想要不編譯直接運(yùn)行時(shí)膊畴,在當(dāng)前目錄下中運(yùn)行
cargo run
命令即可
可以使用rust的gdb_rust_pretty_printing,在調(diào)試中enums, slices, vectors等結(jié)構(gòu)會(huì)更好地顯示病游,但也有人覺(jué)得在windows上使用這個(gè)功能不好唇跨,有時(shí)會(huì)導(dǎo)致長(zhǎng)時(shí)間的暫停或卡死具體參考how-to-set-up-gdb-for-debugging-rust-programs-in-windows
5. F5一鍵運(yùn)行
如果你感覺(jué)每次都去點(diǎn)切換debug窗口比較麻煩衬衬,或者不需要斷點(diǎn)調(diào)試买猖,請(qǐng)參照此部分設(shè)置。
如果你還沒(méi)有tasks.json文件滋尉,請(qǐng)?jiān)诿蠲姘澹–trl+Shift+P或F1)輸入
configure task
玉控,選擇修改tasks.json內(nèi)容為(也可以增加其他task,運(yùn)行時(shí)根據(jù)label(標(biāo)簽)進(jìn)行區(qū)分)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "run",
"type": "shell",
"command": "cargo run",
"problemMatcher": []
},
{
"label": "build",
"type": "shell",
"command": "cargo build",
"problemMatcher": []
},
{
"label": "release",
"type": "shell",
"command": "cargo build --release",
"problemMatcher": []
},
{
"label": "check",
"type": "shell",
"command": "cargo check",
"problemMatcher": []
},
{
"label": "test",
"type": "shell",
"command": "cargo test",
"problemMatcher": []
},
]
}</pre>
打開(kāi)快捷鍵設(shè)置(Keyboard Shortcuts)
[圖片上傳失敗...(image-95d4de-1602307315540)]
輸入task兼砖,出現(xiàn)下圖
找到圖中的Tasks:Rerun Last Task奸远,給它設(shè)置快捷鍵F5。具體方法是雙擊該條目讽挟,出現(xiàn)提示框后按下F5懒叛,然后再按回車。
注意:這會(huì)覆蓋自帶的F5的編譯命令耽梅,如果你需要使用斷點(diǎn)調(diào)試薛窥,也可以使用其他鍵代替比如Ctrl+F5
在該條目上點(diǎn)右鍵,選擇Change When Expression
復(fù)制粘貼editorTextFocus && editorLangId == 'rust'
這樣就只有rust語(yǔ)言中按下F5才是這個(gè)功能。
同樣诅迷,把Tasks:Run Task設(shè)置為Ctrl+F5(上面如果rerun task為Ctrl+F5佩番,這里就改成其他鍵),同樣需要修改when只在Rust中運(yùn)行罢杉。
我們?cè)賮?lái)說(shuō)說(shuō)這個(gè)功能怎么用趟畏。打開(kāi)main.rs,然后按下Ctrl+F5滩租,會(huì)出現(xiàn)run, build,release,check,test(我們定義的task+項(xiàng)目名)赋秀,選擇按下回車確認(rèn)就行了。
- run 是直接運(yùn)行
- build是編譯
- check 是編譯律想,但不生成可執(zhí)行文件猎莲,比build速度快(用來(lái)檢查是否有錯(cuò)誤)
- release是按最高性能編譯(比build速度慢,用來(lái)發(fā)布使用技即,平時(shí)沒(méi)有必要使用)
- test是測(cè)試
關(guān)于build和release的性能詳細(xì)區(qū)別著洼,見(jiàn)這篇文章
霧色:Rust中的零成本抽象(二)(部分翻譯)?zhuanlan.zhihu.com[圖片上傳失敗...(image-b2b800-1602307315539)]
這樣控制臺(tái)會(huì)自動(dòng)運(yùn)行你選擇的命令,vscode沒(méi)有關(guān)閉前而叼,下次按下F5會(huì)運(yùn)行上次命令身笤,不再需要選擇。這樣我們能快速的運(yùn)行該命令查看輸出澈歉,不需要手動(dòng)切換到debug界面展鸡。
如果你安裝的是rust-analyzer,它附帶一個(gè)命令
rust-analyzer:run
埃难,也可以在命令面板(Ctrl+Shift + P)運(yùn)行或者設(shè)置快捷鍵:
它會(huì)顯示提示窗口,并運(yùn)行當(dāng)前位置的二進(jìn)制或者測(cè)試. 在運(yùn)行重復(fù)的單個(gè)測(cè)試時(shí)非常有用涤久,請(qǐng)把這個(gè)綁定到快捷鍵涡尘!
五、附錄:rustlings的使用(強(qiáng)烈推薦)
- 安裝rustlings
- 使用rustlings
- 根據(jù)編譯錯(cuò)誤修改文件以通關(guān)
- 總結(jié)與Tip
rustlings是官方的教學(xué)游戲响迂,它的玩法類似解密游戲考抄。通過(guò)解決程序中的錯(cuò)誤通過(guò)關(guān)卡。
它作為和文檔蔗彤、rust-by-example三足鼎力的新手入門教程川梅,確實(shí)讓人感覺(jué)到好玩、驚艷然遏。
- 安裝rustlings
在powershell中執(zhí)行贫途,選擇y
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
set-executionpolicy remotesigned
</pre>
接著執(zhí)行(注意cd到你想放項(xiàng)目的文件夾)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">cd env:TMP/install_rustlings.ps1; Unblock-File env:TMP/install_rustlings.ps1
</pre>
如果失敗的話,請(qǐng)手動(dòng)下載安裝(先cd到你要存放rustlings的位置)
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">git clone https://github.com/rust-lang/rustlings
cd rustlings
git checkout tags/2.1.0 # or whatever the latest version is (find out at https://github.com/rust-lang/rustlings/releases/latest)
cargo install --force --path .
</pre>
如果有安裝錯(cuò)誤待侵,確保工具鏈?zhǔn)亲钚碌?
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
rustup update
</pre>
2. 使用rustlings
rustlings的題目順序?yàn)槎纾?qǐng)先看過(guò)教程再來(lái)答題(中文教程見(jiàn)文末鏈接)
- 變量
- if條件
- 函數(shù)
- 原生類型
- 結(jié)構(gòu)體
- 枚舉
- 模塊
- 宏
- 引用和借用
- 錯(cuò)誤處理、option和result
- 標(biāo)準(zhǔn)庫(kù)
- 其他
使用答題功能,需要在rustlings目錄下執(zhí)行
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">
rustlings watch
</pre>
建議在vscode中打開(kāi)這個(gè)文件夾怨酝,然后每次在powershell中運(yùn)行傀缩。
[圖片上傳失敗...(image-2bd5be-1602307315539)]
3. 根據(jù)彈出的編譯錯(cuò)誤修改exercises中的文件
rustlings會(huì)根據(jù)概念難易的順序逐個(gè)編譯文件,當(dāng)編譯錯(cuò)誤的時(shí)候农猬,你需要去修正該錯(cuò)誤文件并保存赡艰。
注意:不要關(guān)閉rustlings watch運(yùn)行的窗口,它會(huì)自動(dòng)檢測(cè)你修改保存的文件
修改完成之后斤葱,如果要跳至下一關(guān)慷垮,則需要把當(dāng)前關(guān)文件中的該行注釋刪除保存。
<pre style="margin: 0px; padding: 0.88889em; font-size: 0.9em; word-break: normal; overflow-wrap: normal; white-space: pre; overflow: auto; background: rgb(246, 246, 246); border-radius: 4px;">//I AM NOT DONE </pre>
4. 流程總結(jié)與Tip
流程就是:
- 看文檔
- 再看example
- 再刷rustlings通關(guān)
注意:在exercises文件夾的每個(gè)分類中苦掘,都有一個(gè)README换帜,里面有當(dāng)前分類對(duì)應(yīng)的rust-by-example的地址,推薦先看再做題(網(wǎng)頁(yè)是英文的鹤啡,可以自己打開(kāi)中文網(wǎng)頁(yè)惯驼,見(jiàn)文末)
Rust中文文檔地址:Rust 程序設(shè)計(jì)語(yǔ)言 簡(jiǎn)體中文版
提示:彈出編譯錯(cuò)誤時(shí),在VSCode中按住Ctrl點(diǎn)擊該文件名递瑰,會(huì)直接打開(kāi)該文件
[圖片上傳失敗...(image-378ebc-1602307315539)]
如有錯(cuò)誤祟牲,請(qǐng)不吝告知!
覺(jué)得好的話抖部,請(qǐng)點(diǎn)贊收藏说贝!讓知乎呈現(xiàn)更多你喜歡的東西。
如果你是初學(xué)者的話慎颗,建議把本網(wǎng)頁(yè)添加到瀏覽器書(shū)簽(Ctrl+ D)乡恕,可以經(jīng)常瀏覽下面的常用鏈接。
常用鏈接:
英文文檔:
rustup doc
Rust 程序設(shè)計(jì)語(yǔ)言 中文版(深圳加速站)?120.78.128.153Rust By Example 中文版?rustwiki.orgCargo - Cargo 中文文檔?cargo.budshome.comrust-analyzer features?github.comPrivateRookie:VSCode 使用 rust-analyzer?zhuanlan.zhihu.com
參考文章:
DCjanus:【新手向】從零開(kāi)始配置Windows下Rust開(kāi)發(fā)環(huán)境圖解?zhuanlan.zhihu.com
CrLF0710:Rust 環(huán)境配置事項(xiàng)一覽?zhuanlan.zhihu.com[圖片上傳失敗...(image-b04dca-1602307315539)] Win7 VSCode 離線安裝Rust語(yǔ)言及環(huán)境配置?www.cnblogs.com