我有一個簡單的方法,從給定數量的返回指數值:Contract.Ensures一個OverflowException異常
public int Exp(int num)
{
return Convert.ToInt32(System.Math.Exp(num));
}
當運行的Pex我得到的彙總/異常場一定大量的OverflowException異常: 1969057606.
如何使用Contract.Ensure()
創建後期條件? 我嘗試以下,但它不會做任何事情:
Contract.Ensures(Contract.Result<int>() < 2147483647);
// This is because the max value an int variable can hold is 2147483647
您應該使用'int.MaxValue'而不是實際的數字,對於查看代碼的人來說,閱讀和解析要容易得多。 – 2013-04-21 18:46:35
非常感謝Gabriele。那是真實的!我感謝您的幫助! – user2303644 2013-04-22 13:32:14