+ -
当前位置:首页 → 问答吧 → C语言定义结构中用到了一些宏,宏是什么作用?

C语言定义结构中用到了一些宏,宏是什么作用?

时间:2011-12-13

来源:互联网

源码:

#define MMI_IDLE_OBJ_FIELD_MEMBER_VARIABLE \
  MMI_FACTORY_OBJ_HEADER \
  MMI_BOOL is_self_deleted; \
  mmi_idle_service_indication_struct service_indication[MMI_SIM_TOTAL]  

#define MMI_IDLE_OBJ_FIELD_MEMBER_FUNCTION \
  mmi_idle_on_create_cb on_create; \
  mmi_idle_on_run_cb on_run; \
  mmi_idle_on_before_display_cb on_before_idle_display

#define MMI_IDLE_OBJ_FIELD \
  MMI_IDLE_OBJ_FIELD_MEMBER_VARIABLE; \
MMI_IDLE_OBJ_FIELD_MEMBER_FUNCTION
typedef struct mmi_idle_obj_st
{
  MMI_IDLE_OBJ_FIELD;
} mmi_idle_obj_struct;

这里为什么要用这么多宏来定义结构?仅仅是为了分类作用?



作者: codelabs   发布时间: 2011-12-13

看宏名是用来分类的,区分变量和函数。

就自己的习惯来说,更偏向于将变量写于一块,函数写于一块,而不会像这样整出来那么多的宏,,阅读代码的时候要跟踪几次才知道结构体内部到底有哪些成员,看着让人蛋蛋疼。。。

作者: kongrenxin   发布时间: 2011-12-13

《深入浅出MFC》

作者: zhao4zhong1   发布时间: 2011-12-13