宏(Macro)指的是 Rust 中一系列的功能
- 声明(Declarative)宏,
- 使用macro_rules!
- 三种过程(Procedural)宏:
宏是一种为写其他代码而写代码的方式,即元编metaprogramming
看代码
// src/lib.rs
pub trait HelloMacro {
fn hello_macro();
}
// src/main.rs
use hello_macro::HelloMacro;
struct Pancakes;
impl HelloMacro for Pancakes { fn hello_macro() {
println!("Hello, Macro! My name is Pancakes!");
}
}
fn main() {
Pancakes::hello_macro();
}
可以看出来, 他们需要为每一个他们使用的hello_macro的类型编写实现的代码块
网友评论