所以这是我创建的一些宏:
#define MODULE_NAME moduleName
#define MODULE_STRUCT MODULE_NAME ## _struct
#define MODULE_FUNCTION(name) MODULE_NAME ## _ ## name
在这些定义之后,我希望发生以下扩展:
MODULE_STRUCT --> moduleName_struct
MODULE_FUNCTION(functionName) --> moduleName_functionName
但是,当我添加令牌粘贴运算符时, MODULE_NAME 在 MODULE_FUNCTION 和 MODULE_STRUCT 中的扩展不再发生......当将它们粘贴在一起时,似乎将 MODULE_NAME 视为文字字符串。
有没有解决的办法?