#define S(x) (cout<<#x<<endl) 中的 # 符号是什么意思

What does symbol # means in #define S(x) (cout<<#x<<endl)

#define S(x) (cout<<#x<<endl)

使用 # 将打印我放入 S(x) 中的任何字符串、整数、浮点数。
例如:

S(Door Class Default Constructor);

将打印

Door Class Default Constructor

我找不到任何相关文档。
解释它是如何做到的。

它导致展开后的x被双引号括起来,"

它通常称为字符串化运算符,您可以找到更多信息here