当前位置:早雪网网络学院编程文档其他语言 → C++中建立对象间消息连接的系统方法

C++中建立对象间消息连接的系统方法

减小字体 增大字体 作者:未知  来源:supcode.com收集整理  发布时间:2005-7-1 14:55:46
t)
 {
  if( (event == NULL)?1:(strlen(event) == 0)) return;
  for(int i = 0; i < lastpos; i++)
   if(callBackList[i] == event) callBackList[i].Flush();
 }

 void CallBack::CallCallBack(char *event, CallData callData)
 {
  if( (event == NULL)?1:(strlen(event) == 0)) return;
  CallBack *pCBO;
  CallBackFunction pCBF;
  CallBackStaticFunction pCBSF;
  MoveFirst();
  while(!EndOfList())
  {
   file://如当前事件记录和指定事件不匹配,转入下一条记录继续循环
   if(!(callBackList[curpos] == event))
   {
    MoveNext();
    continue;
   }
   file://如找到匹配记录
   pCBO = callBackList[curpos].pointerToCBO;
   file://如事件记录中回调对象指针为空,说明该记录中保存的是静态函数指针
   if(pCBO == NULL){
    pCBSF = callBackList[curpos].pointerToCBSF;
    pCBSF(callData);//调用该静态回调函数
   }
   else file://如事件记录中回调对象指针非空,说明该记录中保存的是成员函数指针
   {
    pCBF = callBackList[curpos].pointerToCBF;
    (pCBO->*pCBF)(callData);// 调用该回调对象的成员函数
   }
   MoveNext();
  }
 }

上一页  [1] [2] [3] [4] 

[数据载入中...] [返回上一页] [打 印]