Menu
Coddy logo textTech

シンプルなクロージャの定義

CoddyのRustジャーニー「Logic & Flow」セクションの一部 — レッスン 60/66。

クロージャが何であるかを理解したところで、コード内での定義方法と使用方法を学びましょう。クロージャを作成する最も簡単な方法は、それを変数に代入することです。これにより、後で呼び出すことができるようになります。

引数を取らない基本的なクロージャを定義する方法は次のとおりです:

let my_closure = || {
    println!("Hello from the closure!");
};

空の垂直バー || に注目してください。これはクロージャが引数を取らないことを示しています。波括弧には、クロージャを呼び出したときに実行されるコードが含まれます。

クロージャを呼び出すには、変数名の後に括弧を付けることで、関数と同じように使用します:

let my_closure = || {
    println!("Hello from the closure!");
};

my_closure(); // これはクロージャを呼び出し、メッセージを表示します
challenge icon

チャレンジ

簡単

メッセージを含む単一の入力を受け取ります。パラメータを取らず、このメッセージを表示するクロージャを作成してください。そのクロージャを変数に格納し、呼び出してメッセージを表示してください。

要件:

  • 入力メッセージを読み込み、空白をトリミングする
  • メッセージを表示する || 構文を使用したクロージャを作成する
  • クロージャを変数に格納する
  • クロージャを呼び出して実行する

入力:

  • メッセージを含む単一の行 (例: 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: クロージャを呼び出してメッセージを表示する
    
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

Logic & Flowのすべてのレッスン