Так что я пытаюсь запустить простой код с Контрактами кода (который я не использовал в течение некоторого времени)Настройка контрактов кода в Visual Studio 2010
static void Main(string[] args)
{
double res = sqrt(-5);
}
static double sqrt(int a)
{
Contract.Requires(a >= 0, "a must be >= 0!");
return Math.Sqrt(a);
}
Но это, кажется, не делать ничего вообще, когда я запускаю его. Из того, что я вспоминаю несколько месяцев назад, должно возникнуть ошибка в отношении a
, которая меньше 0.
Я переустановил Академическую версию с сайта Code Contracts только для того, чтобы быть в безопасности, и это все еще не работает , Каковы шаги, необходимые для работы Code Contracts?
EDIT: Resharper сообщает мне на Contract.Requires(a >= 0);
, что метод пропускается, поскольку он либо «условный, либо частично метод без реализации».
Благодаря
Я думаю, вы хотите написать Math.Sqrt (a) вместо Math.Sqrt (a * a)? Конечно, это не поможет с вашим вопросом ... – Philipp
Да, это опечатка. –