シンプルなクロージャの定義
CoddyのRustジャーニー「Logic & Flow」セクションの一部 — レッスン 60/66。
クロージャが何であるかを理解したところで、コード内での定義方法と使用方法を学びましょう。クロージャを作成する最も簡単な方法は、それを変数に代入することです。これにより、後で呼び出すことができるようになります。
引数を取らない基本的なクロージャを定義する方法は次のとおりです:
let my_closure = || {
println!("Hello from the closure!");
};空の垂直バー || に注目してください。これはクロージャが引数を取らないことを示しています。波括弧には、クロージャを呼び出したときに実行されるコードが含まれます。
クロージャを呼び出すには、変数名の後に括弧を付けることで、関数と同じように使用します:
let my_closure = || {
println!("Hello from the closure!");
};
my_closure(); // これはクロージャを呼び出し、メッセージを表示しますチャレンジ
簡単メッセージを含む単一の入力を受け取ります。パラメータを取らず、このメッセージを表示するクロージャを作成してください。そのクロージャを変数に格納し、呼び出してメッセージを表示してください。
要件:
- 入力メッセージを読み込み、空白をトリミングする
- メッセージを表示する
||構文を使用したクロージャを作成する - クロージャを変数に格納する
- クロージャを呼び出して実行する
入力:
- メッセージを含む単一の行 (例:
Welcome to Rust!)
出力:
- クロージャによって表示されるメッセージ
チートシート
クロージャは垂直バー || を使用して定義され、変数に格納することができます:
let my_closure = || {
println!("Hello from the closure!");
};クロージャを呼び出すには、変数名の後に括弧を使用します:
my_closure(); // クロージャを実行します自分で試してみよう
use std::io;
fn main() {
// 入力を読み込む
let mut message = String::new();
io::stdin().read_line(&mut message).expect("Failed to read line");
let message = message.trim();
// TODO: メッセージを表示するクロージャを作成し、変数に格納する
// TODO: クロージャを呼び出してメッセージを表示する
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。