助推波不做什么

What does Boost Wave not do?

本文关键字:什么      更新时间:2023-10-16

Boost Wave提供了一个可重用的C预处理器。从文档中很容易获得它所做的事情、它支持的标准、它包含的功能等的(广泛的)列表。

做什么?它是否支持 GCC 和 Microsoft C++ 的所有非标准扩展?还是用于嵌入式系统的各种供应商编译器?它在内联汇编的各种语法或古怪的遗留系统中的弃用代码上表现如何?有没有人尝试过,例如完整的 Linux 内核源代码或 Windows 标头集?

好的,编译了它并自己进行了一些实验。到目前为止,它似乎不支持此 GCC 扩展:

http://gcc.gnu.org/onlinedocs/cpp/Directives-Within-Macro-Arguments.html#Directives-Within-Macro-Arguments

以及Microsoft头文件 C:\Program Files (x86)\Microsoft Visual Studio 11.0\vc\include\xkeycheck.h 上的 barfs,其中包含以下构造:

#if defined(auto)   /* check C keywords */  
|| defined(break) 
...

找出它是否支持您最喜欢的扩展的最简单方法是尝试一下。在这里提问并等待足够的评论/答案积累以便能够得出结论可能会更快。或者检查文档,如果它根本不谈论GCC/MSC扩展,它可能只是不知道它们。