int IList<T>.IndexOf(T value) 
{
   Contract.Ensures(Contract.Result<int>() >= -1);
  Contract.Ensures(Contract.Result<int>() < ((ICollection<T>)this).Count); 
  return default(int); 
}
我只知道Contract.Ensures();是验证后置条件.
Contract.Result<int>() ;但这句看不懂,MSDN 上说:“表示一个方法或属性的返回值。 ”在这里具体返回什么?或者麻烦高手再举更详细简单点的例子解释下,谢谢了。