Contract.Ensures 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
指定封入方法或屬性的後置條件合約。
多載
Ensures(Boolean) |
指定封入方法或屬性的後置條件合約。 |
Ensures(Boolean, String) |
指定提供之結束條件的後置條件合約,以及在條件為 |
Ensures(Boolean)
- 來源:
- Contracts.cs
- 來源:
- Contracts.cs
- 來源:
- Contracts.cs
指定封入方法或屬性的後置條件合約。
public:
static void Ensures(bool condition);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool -> unit
Public Shared Sub Ensures (condition As Boolean)
參數
- condition
- Boolean
要測試的條件運算式。 運算式可以包含 OldValue<T>(T)、ValueAtReturn<T>(T) 及 Result<T>() 值。
- 屬性
範例
下列範例示範如何使用 Ensures 方法來確保傳回預期的值。 此程式代碼範例是提供給 類別之較大範例的 ContractClassAttribute 一部分。
int IArray.Add(Object value)
{
// Returns the index in which an item was inserted.
Contract.Ensures(Contract.Result<int>() >= -1);
Contract.Ensures(Contract.Result<int>() < ((IArray)this).Count);
return default(int);
}
Function Add(ByVal value As Object) As Integer Implements IArray.Add
' Returns the index in which an item was inserted.
Contract.Ensures(Contract.Result(Of Integer)() >= -1) '
Contract.Ensures(Contract.Result(Of Integer)() < CType(Me, IArray).Count) '
Return 0
End Function 'IArray.Add
備註
參數 condition
會指定當封入方法或屬性正常傳回時預期 true
為的後置條件。
這個方法呼叫必須在方法或屬性的開頭,才能進行任何其他程序代碼。
您必須在 Visual Studio Marketplace) 上的 程式碼合約 中使用二進位重寫器 (,以強制執行此後置條件的運行時間。
適用於
Ensures(Boolean, String)
- 來源:
- Contracts.cs
- 來源:
- Contracts.cs
- 來源:
- Contracts.cs
指定提供之結束條件的後置條件合約,以及在條件為 false
時所要顯示的訊息。
public:
static void Ensures(bool condition, System::String ^ userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string userMessage);
[System.Diagnostics.Conditional("CONTRACTS_FULL")]
public static void Ensures (bool condition, string? userMessage);
[<System.Diagnostics.Conditional("CONTRACTS_FULL")>]
static member Ensures : bool * string -> unit
Public Shared Sub Ensures (condition As Boolean, userMessage As String)
參數
- condition
- Boolean
要測試的條件運算式。 運算式可以包含 OldValue<T>(T) 及 Result<T>() 值。
- userMessage
- String
當運算式不是 true
時所顯示的訊息。
- 屬性
備註
參數 condition
會指定當封入方法或屬性正常傳回時預期 true
為的後置條件。
這個方法呼叫必須在方法或屬性的開頭,才能進行任何其他程序代碼。
此合約會向客戶端公開;因此,它只能參考至少與封入方法一樣可見的成員。
您必須在 Visual Studio Marketplace) 上的 程式碼合約 中使用二進位重寫器 (,以強制執行此後置條件的運行時間。
如果
userMessage
不是常數位串常值,則工具可能無法瞭解合約。