main.rcの中ですべての関数を定義しようとすると, 往々にしてだらだらと長くなって可読性が損なわれます.
そのような場合, Rustでは別ファイルを用意してその中で関数を定義することができます (関数のモジュール化).
ここではメイン関数は
./src/main.rc
に含まれるものとします.
関数を定義する別ファイルは./src/sample.rc
とし,
その中で定義された関数はmain.rc
中でmod sample;
とした上で
sample::(関数名)
と呼び出すことができます.
ただしその際に./src/sample
中の関数にはpub
宣言が必要です.
./src/main.rcの記述
mod sample;
fn main() {
let mut x: f64 = 1.;
x = sample::times2( x );
println!("{}", x );
}
./src/sample.rcの記述
pub fn times2( x: f64 ) -> f64 {
2. * x
}
なお, この別ファイルの名称は
./src/sample/mod.rs
とすることもできます.
この方が別ファイルを階層的に配置できるので, 大規模なプロジェクトでは有利かもしれません.
詳細は参考文献を見てください.
コメント
コメントを投稿