目前我在我的 C-Interpreter 上工作。现在我想稍微优化一下。扩展宏的最快方法是什么?例如:我浏览了我的整个代码并找到了一个类似对象的宏。从源文件的这一点开始,我必须遍历完整的翻译单元(不仅是当前文件),并且必须使用宏名称搜索标识符并将其替换为替换列表。如果我有 20 个宏,我必须扫描 20 次。这是一个致命的性能杀手。有谁知道其他预处理器如何处理宏扩展?
问问题
94 次
1 回答
1
对于此类查找,您可以使用HashMap、Map或Binary Tree。
HashMap 更容易使用,如果你使用 C++,你可以使用STL hash_map
于 2012-10-24T21:42:01.797 回答