Mat*_*ens 2 redundancy rust rust-cargo
我认为我的导入有一些冗余,但我真的无法找到另一种方法来做到这一点
主程序.rs
mod lib;
use lib::calc::med_calc;
fn main() {
let mut numbers = vec![1,21,22,4,2];
med_calc(& mut numbers)
}
Run Code Online (Sandbox Code Playgroud)
对我来说,将 lib.rs 声明为模块似乎很奇怪,只有这样我才能使用其中的结构/函数。因为我已经在 lib.rs 本身中将它们声明为模块和公共。
库文件
pub mod calc {
pub fn med_calc(vector: & mut Vec<u8>){
vector.sort();
println!("{}", vector[vector.len()/2])
}
}
Run Code Online (Sandbox Code Playgroud)
文件树(用于货物):
src -
|- main.rs
|- lib.rs
Run Code Online (Sandbox Code Playgroud)
当项目中同时存在lib.rs和文件时,该文件会创建一个库 crate,可以通过 crate 二进制源文件中的 crate 名称进行访问(如和)。main.rslib.rsmain.rsbin/*.rs
例如,如果板条箱名为rust_tmp,那么您可以执行以下操作:
main.rs:
use rust_tmp::calc::med_calc;
fn main() {
let mut numbers = vec![1, 21, 22, 4, 2];
med_calc(&mut numbers)
}
Run Code Online (Sandbox Code Playgroud)
不需要一个mod lib;. 实际上,a与它的用途mod lib;相反。lib.rs
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |