delegate模式

来源:互联网 发布:淘宝有机证书编号 编辑:程序博客网 时间:2024/06/01 11:53

近日在用unity3D引擎,了解了下C#的delegate,

委托即把一部分功能独立出来,抽象出新对象执行部分接口。

这样做的好处是应对变化中的多个对象有相同的行为。

比如CF中攻击时换武器,枪就是变化的对象,攻击是相同的行为。

class character{private:Object* equip;public:character(){equip = NULL;};~character();void setEquip(Object obj) {equip = obj;}void attack(Target target){this->equip->attack(target);}};

换武器只需重新setEquip即可。

C#实现了delegate关键字 详细原理参考这里

原创粉丝点击