다음을 통해 공유


Contract.OldValue<T>(T) 메서드

정의

값을 메서드나 속성의 시작 위치에 있었던 그대로 나타냅니다.

public:
generic <typename T>
 static T OldValue(T value);
public static T OldValue<T> (T value);
static member OldValue : 'T -> 'T
Public Shared Function OldValue(Of T) (value As T) As T

형식 매개 변수

T

값의 형식입니다.

매개 변수

value
T

나타낼 값(필드 또는 매개 변수)입니다.

반환

T

메서드나 속성의 시작 위치에 있는 필드 또는 매개 변수의 값입니다.

예제

다음 예제에서는 메서드를 OldValue 사용하여 개수가 업데이트되었는지 확인합니다. 이 코드 예제는에 대해 제공 된 큰 예제의 일부는 ContractClassAttribute 클래스입니다.

void IArray.Insert(int index, Object value)
{
    Contract.Requires(index >= 0);
    Contract.Requires(index <= ((IArray)this).Count);  // For inserting immediately after the end.
    Contract.Ensures(((IArray)this).Count == Contract.OldValue(((IArray)this).Count) + 1);
}
Sub Insert(ByVal index As Integer, ByVal value As [Object]) Implements IArray.Insert
    Contract.Requires(index >= 0)
    Contract.Requires(index <= CType(Me, IArray).Count) ' For inserting immediately after the end.
    Contract.Ensures(CType(Me, IArray).Count = Contract.OldValue(CType(Me, IArray).Count) + 1)

End Sub

설명

이 메서드는 계약의 조건식 Ensures 에서만 사용할 수 있습니다.

적용 대상