我想用宏来扩展一个功能。所以我写了以下代码:
#define INIT ( T ) \
struct T * init##T() { \
struct T * obj = ( struct T *)malloc( sizeof (struct T )); \
return obj; \
} \
我使用以下命令调用宏:
INIT (mystruct);
错误 ::
错误:在 'struct'<br> 之前需要 '='、','、';'、'asm' 或 '__attribute__' 警告:数据定义没有类型或存储类 [默认启用]
我想基本上编写接受任何结构的通用宏,为该结构的对象分配空间并返回相同的值。