Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 如何更好地理解生锈的板条箱?_Rust_Crate - Fatal编程技术网

Rust 如何更好地理解生锈的板条箱?

Rust 如何更好地理解生锈的板条箱?,rust,crate,Rust,Crate,本书第11章: 板条箱是铁锈中的编译单元。每当调用rustc some\u file.rs时,some\u file.rs将被视为板条箱文件 根据这本书,源文件呢 编译模型以称为板条箱的工件为中心。每次编译都以源代码形式处理一个板条箱,如果成功,则生成一个二进制形式的板条箱:一个可执行文件或某种类型的库 Rust编译器总是以单个源文件作为输入调用,并且总是生成单个输出框。处理该源文件可能会导致其他源文件作为模块加载。源文件的扩展名为.rs 根据这一说法,我认为: 源文件(.rs文件)-->对应

本书第11章:

板条箱是铁锈中的编译单元。每当调用rustc some\u file.rs时,some\u file.rs将被视为板条箱文件

根据这本书,源文件呢

编译模型以称为板条箱的工件为中心。每次编译都以源代码形式处理一个板条箱,如果成功,则生成一个二进制形式的板条箱:一个可执行文件或某种类型的库

Rust编译器总是以单个源文件作为输入调用,并且总是生成单个输出框。处理该源文件可能会导致其他源文件作为模块加载。源文件的扩展名为.rs

根据这一说法,我认为:

源文件(.rs文件)-->对应的板条箱

就像:.java-->.class一样


现在我不明白这个问题;我完全不知所措。

这是你所引用材料的关键部分:

处理该源文件可能会导致其他源文件作为模块加载。

如果您检查一个典型的库,您会发现一个名为
src/lib.rs
的文件,其中包含几行内容,如
mod foo。每个文件都标识另一个文件
src/foo.rs
,编译器将其解释为构成板条箱一部分的另一个模块(或者它可以在同一文件中直接包含该模块)


不是一个源文件就构成了一个板条箱:而是从一个源文件开始,你可以找到构成板条箱的所有文件,
而不是其他编译模型,在这些模型中,编译器可能会有许多文件名开始。

你读过吗?是的,这是我读的第一本书……谢谢你的回答,我想是你的解释让我明白了