Rust の関数
1. 関数 (Functions)
関数とは、呼び出されたときにのみ実行されるコードのブロックです。
関数を使用することで、コードを整理し、重複を避け(DRY原則)、プログラムをより理解しやすくすることができます。
2. 関数の作成
関数を作成するには、fnキーワードに続けて関数名、丸括弧 ()、そして波括弧 {} を記述します。
サンプルコード
fn function_name() {
// 実行されるコード
}3. 関数の呼び出し
関数を作成したら、それを「呼び出す(call)」ことで実行できます。
関数を呼び出すには、関数名の後に2つの丸括弧 () を記述します。
サンプルコード
// 関数の作成
fn say_hello() {
println!("関数からこんにちは!");
}
fn main() {
say_hello(); // 関数の呼び出し
}4. パラメータを持つ関数
パラメータ(引数)を使用して、関数に情報を送ることができます。パラメータは丸括弧 () の中に記述します。
サンプルコード
fn greet(name: &str) {
println!("こんにちは、{}さん!", name);
}
fn main() {
greet("John");
}この例では、関数は name という名前の文字列パラメータを受け取り、挨拶メッセージの中でそれをプリントします。
5. 戻り値を持つ関数
関数は値を返す(リターンする)こともできます。
関数のヘッダー(定義部分)で -> 記号を使用して、どのような型の値が返されるかを示します。
関数内部では、return キーワードを使用して値を返します。
サンプルコード
fn add(a: i32, b: i32) -> i32 {
return a + b;
}
fn main() {
let sum = add(3, 4);
println!("合計は: {}", sum);
}この関数は2つの数値を足し合わせ、その結果を返します。
5.1 暗黙の戻り値
Rustでは、return キーワードを省略することができます。関数の最終行に、セミコロンを付けずに値を記述するだけです。
サンプルコード
fn add(a: i32, b: i32) -> i32 {
a + b
}
fn main() {
let sum = add(3, 4);
println!("合計は: {}", sum);
}最終行の a + b が自動的に返されます。
どちらの例も同じ動作をします。どちらを使用するかは、プロジェクトのスタイルやエンジニアの好みによります。