C++中成立对象间消息衔接的一种系统办法[VC/C++编程]
本文“C++中成立对象间消息衔接的一种系统办法[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
用过C++举行过面向对象程序计划的用户都知道,程序中的对象很少单独存在.不考虑对象间的彼此作用几近是不大概的.所以,标识对象间的关系或成立对象间的消息衔接是面向对象程序计划的一项重要任务.本文侧重从C++程序计划的角度,提出一种成立对象间消息衔接的实用办法.假如你想具体理解面向对象程序计划技术,请参阅有关专著.大家都知道对象是数据和办法的封装体.在C++中,它们辨别表现为数据成员和成员函数.程序计划者通过履行对象的各种办法,来改变对象的状况(即改变对象的属性数据).从而使该对象发生某些“事件”.当一对象发生某事件时,它普通需向别的相关对象发送“消息”,恳求它们作出一些处理. 这时,发闹事件并向别的对象恳求处理的对象被称为“事件对象”,而处理事件的对象被称为“回调对象”.回调对象对事件的处理称为“回调函数”.在C++中,这一历程相当于:当事件对象发闹事件时,调用回调对象的某些成员函数.普通的作法是回调对象向事件对象传送对象指针.但这种办法不通用.为了削减程序计划的工作量,本文提出一种成立对象间消息衔接的系统办法.它的思绪是:将“事件发生→恳求处理→履行处理”这一历程抽象成一个“回调”(CallBack)类.通过担当,用户可以轻松获得成立对象间消息衔接的机制.
1、回调类的数据构造及其成员函数
本文提出的CallBack类支持三种回调函数.它们是:回调对象中的成员函数,属于回调类的静态成员函数和普通的C函数.CallBackle类中包含一回调函数表callBackList.它用于记录事件名称,指向回调函数及回调对象的指针.该表的每一个节点为一个事件记录EventRecord.每个事件记录包含三个域:事件名指针eventName,指向回调对象的指针pointerToCBO,指向回调函数的指针pointerToCBF或pointerToCBSF(此中,pointerToCBF指向回调对象的成员函数,pointerToCBSF指向回调类的静态成员函数或普通函数.它们同处于一共用体内).CallBack类所供应的回调机制是这样的:在事件对象上注册回调对象中的回调函数;当事件发生时,事件对象在其回调表中检索并履行回调函数.从而使二者的消息衔接得以成立.(关于该类的具体实现,请参阅文后所附的程序清单)
以上是“C++中成立对象间消息衔接的一种系统办法[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |