IEnumeratorContract<C> 인터페이스

정의

IContract 개체의 제네릭 컬렉션 요소를 열거합니다.Enumerates the elements of a generic collection of IContract objects.

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

열거할 개체의 형식입니다.The type of objects to enumerate. CIContract 인터페이스를 구현해야 합니다.C must implement the IContract interface.

구현

설명

열거자를 사용하여 컬렉션의 데이터를 읽을 수는 있지만 내부 컬렉션을 수정할 수는 없습니다.Enumerators can be used to read the data in the collection, but they cannot be used to modify the underlying collection.

처음에 열거자는 컬렉션의 첫 번째 요소 앞에 배치됩니다.Initially, the enumerator is positioned before the first element in the collection. 이 위치에서의 반환 값 GetCurrent 정의 되지 않습니다.At this position, the return value of GetCurrent is undefined. 따라서 호출 해야 합니다 MoveNext 하 여 열거자를 호출 하기 전에 컬렉션의 첫 번째 요소로 GetCurrent합니다.Therefore, you must call MoveNext to advance the enumerator to the first element of the collection before calling GetCurrent.

GetCurrentMoveNext가 호출될 때까지 동일한 개체를 반환합니다.GetCurrent returns the same object until MoveNext is called. MoveNext 반환 값을 설정 GetCurrent 다음 요소에 있습니다.MoveNext sets the return value of GetCurrent to the next element.

경우 MoveNext 열거자를 컬렉션의 끝 컬렉션의 마지막 요소 뒤에 배치 되는 전달 하 고 MoveNext 반환 false합니다.If MoveNext passes the end of the collection, the enumerator is positioned after the last element in the collection and MoveNext returns false. 열거자가 있는 경우이 위치에 대 한 후속 호출은 MoveNext 반환할 수도 false합니다.When the enumerator is at this position, subsequent calls to MoveNext also return false. 마지막으로 호출 하는 경우 MoveNext 반환 false, 반환 값 GetCurrent 정의 되지 않습니다.If the last call to MoveNext returned false, the return value of GetCurrent is undefined.

컬렉션이 변경되지 않고 그대로 유지되는 한 열거자는 유효한 상태로 유지됩니다.An enumerator remains valid as long as the collection remains unchanged. 컬렉션에 대해 변경 내용을 수행하면(예: 요소 추가, 수정 또는 삭제) 열거자는 복구 불가능하게 무효화되고 해당 동작은 정의되지 않습니다.If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined.

메서드

AcquireLifetimeToken()

클라이언트가 계약을 해지할 때까지 클라이언트에서 계약에 액세스할 수 있도록 지정합니다.Specifies that the contract is accessible to a client until the client revokes the contract.

(다음에서 상속됨 IContract)
GetCurrent()

컬렉션에서 열거자의 현재 위치에 있는 IContract를 반환합니다.Returns the IContract in the collection at the current position of the enumerator.

GetRemoteHashCode()

IContract의 해시 코드를 반환합니다.Returns a hash code for the IContract.

(다음에서 상속됨 IContract)
MoveNext()

열거자를 컬렉션의 다음 요소로 이동합니다.Advances the enumerator to the next element of the collection.

QueryContract(String)

이 계약에서 구현하는 계약을 반환합니다.Returns a contract that is implemented by this contract.

(다음에서 상속됨 IContract)
RemoteEquals(IContract)

지정된 계약이 이 IContract와 같은지 여부를 나타냅니다.Indicates whether the specified contract is equal to this IContract.

(다음에서 상속됨 IContract)
RemoteToString()

현재 IContract의 문자열 표현을 반환합니다.Returns a string representation of the current IContract.

(다음에서 상속됨 IContract)
Reset()

컬렉션의 첫 번째 요소 앞의 초기 위치에 열거자를 설정합니다.Sets the enumerator to its initial position, which is before the first element in the collection.

RevokeLifetimeToken(Int32)

클라이언트에서 계약에 더 이상 액세스할 수 없도록 지정합니다.Specifies that the contract is no longer accessible to a client.

(다음에서 상속됨 IContract)

적용 대상