组件导向架构学习与实践
1. 链表枚举流程
在处理链表元素时,会经历以下流程:
1. 调用 LinkedListEnumerable.GetEnumerator() 方法,返回一个 IEnumerator 实例。
2. 代码调用 LinkedListEnumerable.MoveNext() 方法。
3. MoveNext() 方法的实现返回 True 表示可以移动到下一个元素;若返回 False ,则表示已到达集合(这里是链表)的末尾。
4. 如果 MoveNext() 返回 True ,则调用 LinkedListEnumerable.Current() 属性来获取当前链表元素。
5. 将获取的链表元素赋值给 For Each 循环的变量(在本例中为 rg )。
6. 控制权返回给 For Each 循环,用户代码对链表元素进行操作。
7. 当 For Each 循环尝试下一次迭代时,重复步骤 2 至 6,直到 MoveNext() 返回 False 。
8. 当 MoveNext() 返回 False 时,迭代器退出,导致
超级会员免费看
订阅专栏 解锁全文
168万+

被折叠的 条评论
为什么被折叠?



