4

不同的 C++ 风格指南不赞成使用 C 预处理器宏。

我知道有一些工具可以帮助检测由于使用宏而导致的错误(CPPCHECKER、Check),以及在存在预处理器指令的情况下提供重构的工具(CSCout、XRefactory)。

我想知道是否有任何重构工具可以为 C++ 程序中的宏提供替代方案(如内联函数、常量表达式)。

4

1 回答 1

1

多年后,您的工作似乎被用作此类工具的基础,因为以前没有出现过。

后来成为 Cevelop IDE 一部分的Macronator一种工具,可以将类对象和类函数宏重构为等效的 c++11 表达式。他们引用Kumar、Sutton 和 Stroustrup 的“The demacrofier”论文作为他们软件的基础。我用它从代码库中删除了 ~15k 宏。

于 2018-07-13T09:22:26.077 回答