各编程语言的抽象语法树查看工具:https://astexplorer.net/
- 简而言之,元编程就是你编写的代码将使用其他代码作为数据输入
- 这意味着您可以操作现有代码,生成额外的代码,或向应用程序添加新功能
- 许多语言都提供了一些元编程的方法,但是这些工具通常很难使用,并且没有很好地集成到语言中,这可能会导致难以理解或有 bug 的代码
- Rust 的宏 功能强大,避免了其中的许多缺点,专注于安全性,不会对运行时性能产生实际影响
- Rust 中的宏被“扩展”为编译器检查的代码
- Rust 具有高层级的 声明宏 和 三种过程性宏(派生宏、属性宏 和 类函数宏),它们将代码作为 tokens 流 处理
- 元编程不应该是你解决问题的首选,但它可以帮助你避免样板代码和重复的代码,使你的应用程序更容易使用,或完成“普通”Rust 难以完成的事情