《TypeScript图形渲染实战:2D架构设计与实现》 —2.3.4 模拟微软.NetFramework中的泛型迭代器
【摘要】 本节书摘来自华章计算机《TypeScript图形渲染实战:2D架构设计与实现》 一书中第2章,第2.3.4节,作者是步磊峰。
2.3.4 模拟微软.NetFramework中的泛型迭代器
在微软的.NetFramework中,有两个接口定义了迭代器模式:IEnumerable可迭代接口(该接口只有一个getEnumerator的方法,不使用该接口,因此不在代码中定义),以及IEnumerator迭代器接口。使用TypeScript泛型方式来定义IEnumerator接口。具体代码如下:
export interface IEnumerator < T > {
// 将迭代器重置为初始位置
reset ( ) : void ;
// 如果没越界,moveNext将current设置为下一个元素,并返回true
// 如果已越界,moveNext返回false
moveNext ( ) : boolean ;
// 只读属性,用于获取当前的元素,返回泛型T
readonly current : T ;
}
上述代码模拟了微软.NetFramework中的泛型迭代器接口,在TypeScript中,可以在声明的类型后面使用< T >方式定义泛型,其中T可以替换成其他文字,例如< t > 或者< kind >之类的。然后就可以在类中使用T进行类型替代,后续章节会广泛使用泛型。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)