##用作define中可以连接两个字符串;
#用作define中可以转换为字符串;
#@用作define中可以转换为一个字符;
比如:
#define Conn(x,y) x##y
#define ToChar(x) #@x
#define ToString(x) #x
int a=Conn(12,34);
char b=ToChar(a);
char c[]=ToString(a);
结果是 a=1234,b='a',c=”a”;
在复杂点的应用就是:
#define AP_PARAMDEF(_t, _suffix, _pt) typedef AP_ParamT<_t, _pt> AP_ ## _suffix;
AP_PARAMDEF(float, Float, AP_PARAM_FLOAT); // defines AP_Float
结果为:
创建一个AP_suffix的实例。