adder相当于main函数
add-one是lib
二者位于addr之中
cargo工作空间
- 不使用cargo new 的方法来创建,使用以下命令:
1 2 3
| mkdir addr cd addr vim Cargo.toml
|
1 2 3 4 5
| [workspace] members = [ "adder", ]
|
工作目录如下:
此时出现如下目录
1 2 3 4 5 6 7 8
| Cargo.toml Cargo.lock adder------------ | ------Cargo.toml | ------src target
|
Cargo工作空间添加新的lib库
1 2 3 4 5 6
| [workspace] members = [ "adder", "add_one", ]
|
1 2 3
|
cargo new add_one --lib
|
1 2 3 4 5 6 7 8 9 10 11
| pub fn add_one(x: i32) -> i32 { x + 1 } #[cfg(test)] mod tests { #[test] fn it_works() { assert_eq!(2+2,4); } }
|
使用
1 2 3 4 5 6 7 8 9 10
|
[package] name = "adder" version = "0.1.0" authors = ["andy"] edition = "2018"
[dependencies] add_one = {path = "../add_one"}
|
1 2 3 4 5 6 7 8
| use add_one;
fn main() { let num = 10; let r = add_one::add_one(num); println!("r = {}",r); }
|
之后使用:
最后进行运行:
1 2
| # addr之中 cargo run -p adder
|