Rust-宏

在Rust中,我们应该会使用过像println!这样的宏,不过还没完全探索什么是宏以及它是如何工作的。宏(Macro)指的是Rust中一系列的功能:使用 macro_rules!的声明 (Declarative)宏,和三种过程的(Procedural)宏:

  • 自定义 #[derive] 宏在结构体和枚举上指定通过 derive 属性添加的代码
  • 类属性(Attribute-like)宏定义可用于任意项的自定义属性
  • 类函数宏看起来像函数不过作用于作为参数传递的token

我们会依次讨论每一种宏,不过为什么已经有了函数还需要宏呢?

 

上一篇:Rust 容器String


下一篇:rust or typescript