我正在试用预处理器函数式的宏,所以我正在尝试编写一个前向声明常规函数的宏。但是当我去编译它说第2行有不正确的语法。编写预处理器函数:语法是否正确
我在做什么错?
#define FORWARD_DECLARE_CUSTOM_FUNCT(fName) "int" #fName "(int id, string msg, string cmd);"
FORWARD_DECLARE_CUSTOM_FUNCT("abc") // LINE 2: Should become "int abc(int id, string msg, string cmd);"
void test()
{
abc(1, "", "");
}
它为什么要成为' “INT ......”'和'不INT ...'? – chris 2013-02-11 04:24:20
@chris好的,我删除了所有的引号,但我仍然得到编译错误:'#define FORWARD_DECLARE_CUSTOM_FUNCT(fName)int #fName(int id,string msg,string cmd);' – 2013-02-11 04:26:40