mirror of
https://github.com/RustyCab/LearnRustEasy.git
synced 2026-02-03 18:23:31 +08:00
Create chapter_3_17_3.md
This commit is contained in:
48
src/chapter_3/chapter_3_17_3.md
Normal file
48
src/chapter_3/chapter_3_17_3.md
Normal file
@@ -0,0 +1,48 @@
|
||||
# 3.17.3 再谈crate
|
||||
## 1. 创建二进制crate和库crate
|
||||
可以被编译成可执行文件的crate就是二进制crate,它的代码中必定包含一个main函数。如下方式创建的就是一个二进制crate:
|
||||
```
|
||||
cargo new main
|
||||
```
|
||||
|
||||
对于库crate的创建,需要加上--lib方式如下:
|
||||
```
|
||||
cargo new my-lib --lib
|
||||
```
|
||||
|
||||
## 2. 使用第三方的crate
|
||||
在Rust项目中,经常会使用第三方的crate。使用第三方的crate主要分为两步:
|
||||
- 添加依赖;
|
||||
- 在代码中使用。
|
||||
|
||||
下面以使用第三方crate rand为例,来进行演示。
|
||||
### (1)首先创建一个工程:
|
||||
```
|
||||
cargo new main
|
||||
```
|
||||
|
||||
### (2)添加依赖:
|
||||
```
|
||||
cd main
|
||||
```
|
||||
|
||||
打开main目录下的Cargo.toml文件,在[dependencies]下添加对rand库的依赖(即添加语句rand = "0.8.5"),添加后整个文件的内容如下:
|
||||
|
||||

|
||||
|
||||
### (3)在代码中使用rand库
|
||||
编写src/main.rs如下:
|
||||
|
||||
```Rust
|
||||
// src/main.rs
|
||||
use rand::prelude::*; // 引入rand库
|
||||
|
||||
fn main() {
|
||||
// 使用rand的函数
|
||||
let mut rng = rand::thread_rng();
|
||||
let y: f64 = rng.gen();
|
||||
println!("y = {:?}", y);
|
||||
}
|
||||
```
|
||||
|
||||
**重点说明**:在第二步中,当在Cargo.toml的[dependencies]添加rand = "0.8.5"后,程序编译时,会自动先去拉取rand库相关的内容,拉取完成后进行编译。
|
||||
Reference in New Issue
Block a user