Share via


IEnumeratorContract<C> 接口

定义

枚举 IContract 对象的泛型集合的元素。

generic <typename C>
 where C : IContractpublic interface class IEnumeratorContract : System::AddIn::Contract::IContract
public interface IEnumeratorContract<C> : System.AddIn.Contract.IContract where C : IContract
type IEnumeratorContract<'C (requires 'C :> IContract)> = interface
    interface IContract
Public Interface IEnumeratorContract(Of C)
Implements IContract

类型参数

C

要枚举的对象的类型。 C 必须实现 IContract 接口。

实现

注解

枚举器可用于读取集合中的数据,但不能用于修改基础集合。

最初,枚举数定位在集合中第一个元素的前面。 在此位置,的 GetCurrent 返回值未定义。 因此,在调用 之前GetCurrent,必须调用 MoveNext 将枚举数推进到集合的第一个元素。

在调用 GetCurrent 之前,MoveNext 返回相同的对象。 MoveNext 将 的 GetCurrent 返回值设置为下一个元素。

如果 MoveNext 传递集合的末尾,则枚举器位于集合中最后一个元素之后,并 MoveNext 返回 false。 当枚举器位于此位置时,对 MoveNext 的后续调用也会返回 false。 如果最后一次 MoveNext 调用返回 , false则 的 GetCurrent 返回值未定义。

只要集合保持不变,枚举器就仍有效。 如果对集合进行更改(如添加、修改或删除元素),则枚举数将失效且不可恢复,而且其行为是不确定的。

方法

AcquireLifetimeToken()

指定客户端在撤消此协定之前一直可以访问它。

(继承自 IContract)
GetCurrent()

返回集合中位于枚举数当前位置的 IContract

GetRemoteHashCode()

返回 IContract 的哈希代码。

(继承自 IContract)
MoveNext()

将枚举数推进到集合的下一个元素。

QueryContract(String)

返回由此协定实现的协定。

(继承自 IContract)
RemoteEquals(IContract)

指示指定的协定是否与此 IContract 相等。

(继承自 IContract)
RemoteToString()

返回当前 IContract 的字符串表示形式。

(继承自 IContract)
Reset()

将枚举数设置为其初始位置,该位置位于集合中第一个元素之前。

RevokeLifetimeToken(Int32)

指定客户端不再能够访问该协定。

(继承自 IContract)

适用于