c++ - 宏操作符列表

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

我了解 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/

相关文章:

c++ - 检查 C++11 中运算符是否存在的最佳方法

c++ - 具有多种类型的递归模板函数

macros - Julia 中宏生成宏中的转义表达式

matlab - matlab 中 * 和 .* 有什么区别?

c++ - 在 C++ 中使用重复的宏

lambda - 如何在 Clojure 中将 lambda 实现为名为 "lambda"的函数?

c++ - 冒号是什么意思(:) operator in "uint isWidget : 1;" in Qt?

c++ - 使用 for_each 计算 vector 中每个元素的平方和

c++ - 如何使用可变模板参数调用模板函数?

c++ - 子类继承友元