目的:提供一种方法顺序访问一个聚合对象的元素没有公开其底层表示[1]。这种设计模式也称为游标。
动机:一个聚合对象的一个例子是ADT的实例列表。因此,可以使用一个迭代器遍历一个列表的元素的高层抽象的操作。这些操作可以实现列表内ADT但伽马et al。[1]非常所说,这个模式的核心思想是把负责访问和遍历列表对象,并把它放到一个迭代器对象——考虑到列表迭代器描述的行为而描述一个集合。
实现:迭代器使用抽象类纯粹指定具体实现的需求。这种抽象可以实现为一个外部/活跃或内部/被动迭代器
外部:=责任在客户端推进遍历和请求下一个元素。
内部:=客户端可以提供一个操作执行在集合的每个元素的迭代器
指pp.257 - 271伽马et al。[1]在迭代器的更多信息(行为)设计模式。
鲍比Nedelkovski写的
MathWorks澳大利亚
版权2009 - 2010,MathWorks公司。
参考:
[1]γ,E。舵,R。约翰逊,r . Vlissides, j .设计模式:可复用面向对象软件的元素。波士顿:addison - wesley, 1995。
引用作为
鲍比Nedelkovski (2023)。设计模式:迭代器(行为)(//www.tianjin-qmedu.com/matlabcentral/fileexchange/25225-design-pattern-iterator-behavioural), MATLAB中央文件交换。检索。