發文原因
很多初學者都使用 cargo new [project_name] 來創建專案,并直接在 main.rs 檔案中實作所有功能,
這樣是不合理的,并不符合我們 cargo 的開發規范,
下面將簡單的介紹一下 rust project 中的檔案結構,
cargo new [project_name ] --[bin/lib] 命令可以在專案名稱后指定一個引數,來告訴cargo我們創建的是什么型別的專案,bin 代表二進制專案,也就是我們常說的可執行檔案, lib 代表庫專案,無法直接執行, 默認引數為 bin,
cargo new [project_name] --bin 創建的默認結構
·
├── Cargo.lock
├── Cargo.toml
├── src/
│ ├── main.rs
├── target/
- ·
根目錄 - Cargo.lock 檔案
由 cargo 維護的專案相關依賴的具體資訊,不需要我們手動編輯, - Cargo.toml 檔案
由我們編輯的專案名稱、專案版本、專案作者等,以及專案所需相關依賴, - src/ 檔案夾
存放我們的源代碼 - src/main.rs
程式入口 - target/檔案夾
用來存放 debug/ release 時的檔案,通常不需要我們手動編輯,
下面只說上面沒說過的檔案/檔案夾
cargo new [project-name] --lib 創建的默認結構
·
├── Cargo.lock
├── Cargo.toml
├── src/
│ ├── lib.rs
├── target/
- lib.rs
庫的默認輸出口
下面是相對來說比較完整的目錄
·
├── Cargo.lock
├── Cargo.toml
├── src/
│ ├── main.rs
│ └── another_mod/
│ ├── A.rs
│ ├── b.rs
│ └── mod.rs
├── benches/
│ ├── large-input.rs
│ └── multi-file-bench/
│ ├── main.rs
│ └── bench_module.rs
├── examples/
│ ├── simple.rs
│ └── multi-file-example/
│ ├── main.rs
│ └── ex_module.rs
└── tests/
├── some-integration-tests.rs
└── multi-file-test/
├── main.rs
└── test_module.rs
- src/another_mod
為我們自定義模塊創建的檔案夾, - src/another_mod/A.rs
我們自定義模塊中的的A mod, - src/another_mod/B.rs
我們自定義模塊中的B mod, - src/another_mod/mod.rs
我們自定義模塊的 默認匯出,任何一個自定義mod 檔案夾都應該包含一個 mod.rs檔案, - benches
基準測驗檔案夾,用來進行性能測驗, - examples
示例檔案夾,用來存放crate的呼叫示例代碼, - tests
集成測驗檔案夾,mod 之間的嵌套測驗,
Rust官網
Rust 中文社區
本文來自博客園,作者:賢云曳賀,轉載請注明原文鏈接:https://www.cnblogs.com/SantiagoZhang/p/17266120.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/548454.html
標籤:其他
上一篇:day01-專案介紹和功能實作
