我了解 Macro 的字符串化运算符 (#
),并且最近了解了 (##
) 连接运算符:Preprocessor Stringizing Operator with String Literal Prefixes
还有其他可用的宏运算符吗?
我知道 Boost 有一个相当广泛的套件,他们放在一起,但是为了这个问题的目的,我只是询问标准定义的宏运算符支持。
最佳答案
如 Cyber's comment 所述字符串化 (#
) 和串联运算符 (##
) 是 C++ 中定义的唯一宏运算符:Macro Operator List
此链接还读取了标准定义的预定义宏列表。它们也可用于宏,尽管它们实际上不是运算符。
如果您不关心跨平台兼容性,可能还值得注意的是 Visual C++ 提供了一个非标准运算符,Charizing 运算符 (#@
):https://msdn.microsoft.com/en-us/library/91tt6dfs.aspx
关于c++ - 宏操作符列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30031175/