没有实现功能的宏有什么作用?该怎么解决

没有实现功能的宏有什么作用?
没有实现功能的宏有什么作用?
不知道这样描述的对不对,
在看memcached时看到经常调用一些没有定义体的宏,
比如:
C/C++ code

#define MEMCACHED_SLABS_SLABCLASS_ALLOCATE_FAILED(arg0)



程序中会出现这样的调用:
C/C++ code

const unsigned int id;
MEMCACHED_SLABS_SLABCLASS_ALLOCATE_FAILED(id);



不知道这有什么作用?

------解决方案--------------------
刚好知道两个作用!
1.方便扩展
2.防止多次定义!