事件构造函数和析构函数

构造函数和析构函数是为程序包规范文件中的事件定义的。例如:

/* Constructors and destructors: */
ev1 * RiC_Create_ev1();
void ev1_Init(ev1* const me);
void ev1_Cleanup(ev1* const me);
void RiC_Destroy_ev1(ev1* const me);

事件创建和破坏操作的名称的模式与事件初始化和清除操作的名称的模式稍有不同:

事件构造函数和析构函数的实施在程序包的实施文件中生成。例如:

ev1 * RiC_Create_ev1() {
   ev1* me = (ev1*) malloc(sizeof(ev1));
   ev1_Init(me);
   return me;
}

对于动态分配的事件,创建方法函数为事件分配内存并通过事件初始化方法将其初始化:

void ev1_Init(ev1* const me) {
   RiCEvent_init(&me->ric_event, ev1_Default_id, NULL);
   me->ric_event.lId = ev1_Default_id;
}
void ev1_Cleanup(ev1* const me) {
   RiCEvent_cleanup(&me->ric_event);
}
void RiCDestroy_ev1(ev1* const me) {
   ev1_Cleanup(me);
   free(me);
}
注: 也可以在运行时的开始为事件静态分配一块内存,而不是在运行时的过程中使用动态内存分配。请参阅事件的静态分配以了解更多信息。

请参阅发送事件以了解有关生成和发送事件的信息。


反馈