宏操作员列表

时间:2015-05-04 13:17:38

标签: c++ macros operators c-preprocessor standard-library

我知道Macro的Stringizing运算符(#),我最近了解了(##)Concatenation运算符:Preprocessor Stringizing Operator with String Literal Prefixes

我还有其他可用的宏操作符吗?

我知道Boost有一个非常广泛的套件,但是出于这个问题的目的,我只是询问标准定义的Macro运营商支持。

1 个答案:

答案 0 :(得分:1)

正如Cyber's comment所提到的,Sringizing(#)和连接运算符(##)是C ++中定义的唯一宏运算符:Macro Operator List

此链接还标识了标准定义的预定义宏列表。哪些也可以在宏中使用,尽管它们实际上不是运算符。

如果您没有进入跨平台兼容性,那么值得注意的是,Visual C ++提供了一个非标准运算符,即Charizing运算符(#@):https://msdn.microsoft.com/en-us/library/91tt6dfs.aspx