Rust.cc -

规则宏的“卫生保健”

规则宏代码的“卫生保健” 规则宏mbe即是由macro_rules!宏所定义的宏。它的英文全称是Macro By Example。相比近乎“徒手攀岩”的Cpp模板·元编程,rustc提供了有限的编译时宏代码检查功能(名曰:Mixed Hygiene宏的混合保健)。因为rust宏代码·被展开于·编译过程中的语法分析阶段(请见下图),所以rustc相较于g++/gcc拥有更多可用作“代码静态分析”的信息。 宏代码验证功能的有限性体现在rustc仅只对·宏展开式·内的 本地变量 标签 当前包引用 执行编译时检查。 咦!“宏展开式”是什么概念?这是一个好问题。在我们开始更深入的讨论之前,有必要先...

去reddit讨论