मैं निम्नलिखित कोड है:हो रही कोड संविदा दृश्य स्टूडियो में काम 2010
class Program
{
static void Main(string[] args)
{
Console.WriteLine(SqrtRoot(0));
Console.WriteLine(SqrtRoot(10));
Console.WriteLine(SqrtRoot(-10));
Console.ReadKey();
}
public static int SqrtRoot(int i)
{
Contract.Requires(i >= 0);
return (int)Math.Sqrt(i);
}
}
मैं इसे डिबग मोड में चला रहा हूँ, और यह अंतिम पंक्ति में त्रुटि किसी तरह का सक्रिय किया जाना चाहिए
Console.WriteLine(SqrtRoot(-10));
पूरी तरह से, किसी कारण से, यह नहीं है। ऐसा लगता है कि अनुबंध को अनदेखा करता है। (कॉल)। क्या मुझे कोड अनुबंधों का उपयोग करने की कोशिश करते समय कुछ स्थापित करना चाहिए?
मैं विजुअल स्टूडियो 2010 आरसी का उपयोग कर रहा हूं।
धन्यवाद
यदि i = 0, i = 10 और i = -10 के मानों के लिए यह त्रुटि उत्पन्न होगी। मुझे यह नहीं मिला। –
मैंने अभी अनुबंध के साथ कोशिश की है। (i> = 0) की आवश्यकता है; और अब जीना बाहर नहीं है। शायद आपको अपवाद प्रकार देना होगा क्योंकि विक्टर सुझाव देता है। –
एचएम ... आप सही हैं। कुछ ठीक नहीं चल रहा है ... भले ही अनुबंधों का डिफ़ॉल्ट व्यवहार एक त्रुटि फेंकना और खिड़की प्रदर्शित करना है। –