13
因此,這裏有一些宏,我創建:C:擴展宏標記粘貼
#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是一個字符串。
有沒有辦法解決這個問題?