教程 rust tutorial

宏与元编程

Rust 的宏允许在编译时生成代码,实现代码复用与简化复杂模式。

宏示例

rust
macro_rules! say_hello {
    () => {
        println!("Hello, Rust!");
    };
}

fn main() {
    say_hello!();
}

带参数的宏

rust
macro_rules! create_function {
    ($func_name:ident) => {
        fn $func_name() {
            println!("函数 {:?} 被调用", stringify!($func_name));
        }
    };
}

create_function!(foo);

fn main() {
    foo();
}

代码演示

Rust Playground
打开运行
macro_rules! say_hello {
    () => {
        println!("Hello, Rust!");
    };
}

fn main() { say_hello!(); }

macro_rules! create_function { ($func_name:ident) => { fn $func_name() { println!("函数 {:?} 被调用", stringify!($func_name)); } }; }

create_function!(foo);

fn main() { foo(); }