学习Unity3D之迭代器。
来源:互联网 发布:淘宝店铺推广有用么 编辑:程序博客网 时间:2024/04/28 17:07
欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。
迭代器
迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址。迭代器修改了常规指针的接口,所谓迭代器是一种概念上的抽象:那些行为上像迭代器的东西都可以叫做迭代器。然而迭代器有很多不同的能力,它可以把抽象容器和通用算法有机的统一起来。
迭代器是可以返回相同类型的值的有序序列的一段代码。
迭代器可用作方法、运算符或 get 访问器的代码体。
迭代器代码使用 yield return 语句依次返回每个元素。yield break 将终止迭代。有关更多信息,请参见 yield。
可以在类中实现多个迭代器。每个迭代器都必须像任何类成员一样有唯一的名称,并且可以在 foreach 语句中被客户端代码调用,如下所示: foreach(int x in SampleClass.Iterator2){}
迭代器的返回类型必须为 IEnumerable、IEnumerator、IEnumerable<T> 或 IEnumerator<T>。
迭代器是使用在foreach中的集合。在C#2.0中使用迭代器创建一个用于foreach的集合,实现上比较简单:继承于IEumnerable,并实现 GetEnumerator()。
迭代器的机制:
实际上迭代器只是在C#2.0中通过编译器一层额外处理的,用来简化创建可用于foreach的枚举集合的工作,从性能上没有什么变化。对于其生成的中间语言没有太多的变化。
适用性
1.访问一个聚合对象的内容而无需暴露它的内部表示。
2.支持对聚合对象的多种遍历。
3.为遍历不同的聚合结构提供一个统一的接口(即, 支持多态迭代)。
- 学习Unity3D之迭代器。
- Unity3D学习之(迭代器)
- Unity3D学习之刚体
- unity3d学习之光源
- Unity3d学习之音频
- Unity3D学习之光源
- Unity3D学习之transform。
- 学习Unity3D之登陆。
- 学习Unity3D之克隆。
- 学习Unity3D之背景图片。
- Unity3D之FingerGestures学习
- Unity3D学习之准备工作
- Unity3D之C#学习
- Unity3D学习之Camera
- Unity3D学习之路
- Unity3D学习之路
- Unity3D学习之路
- 学习Unity3D之Unity3D中的登录。
- jpg图片在firefox正常显示 在ie不能显示
- 一个Mac下的聊天客户端Sample(Bonjour)
- json 数据 添加 删除 排序
- android ndk stack 使用
- tornado源码分析系列 buffer事件类IOStream
- 学习Unity3D之迭代器。
- SQList3 and SQL入门学习笔记
- ExtJS 4.*基础概念总结(基于Ext4.2.1)
- linux学习(3)文件权限,类型,改变文件权限,用户,用户组
- TLD(Track learn detect)跟踪器
- HDU1403 - Longest Common Substring(后缀数组求nlog(n)的最长公共子序列)
- 中移动将发布融合通信手机 打造运营商社交
- Soot中的包(Packs)和阶段(phases)
- 机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理)