首页 > 代码库 > 几种常用的设计模式(DHMENG3)

几种常用的设计模式(DHMENG3)

设计模式之代理模式

Demo如下:

定义一个虚基类,声明三个纯虚函数,我定义一个Person类

Person.h

定义一个Student类来继承这个Person类,并实现相应的虚函数

Student.h

Student.cpp

定义一个代理类Delegate,同时继承自Person类

Delegate.cpp

main函数里边

看着好像是代理对象在做这件事情,但是它其实是调用了真正做这件事情的方法做这件事

 

当然在OC中,一般都将代理方法写成一个协议,看事例如下:

(分正式协议与非正式协议,大家有兴趣可查阅相关文档,在这不多解释)

当然我们要有一个实体类(OwnerDelegateViewController)对象

当我们在实体类中要使用这个协议方法时,我们先引用这个协议名称,并实现它

当然,我们须要委托此控制器支自动执行协议方法

这就是代理在OC中的一般使用方法。

 

几种常用的设计模式(DHMENG3)