Вопросы с тегом «invariants»

6
Что такое инварианты, как их можно использовать, и использовали ли вы их когда-либо в своей программе?
Я читаю Coders at Work , и в нем много говорят об инвариантах. Насколько я понял, инвариант - это условие, которое выполняется до и после выражения. Они, помимо прочего, полезны для доказательства правильности цикла, если я правильно помню курс по логике. Мое описание верно, или я что-то пропустил? Вы когда-нибудь …
48 invariants 

6
Цикл Foreach с циклом break / return против цикла while с явным инвариантом и постусловием
Это наиболее популярный способ (мне кажется) проверки, находится ли значение в массиве: for (int x : array) { if (x == value) return true; } return false; Однако в книге, которую я читал много лет назад, вероятно, Виртом или Дейкстрой, было сказано, что этот стиль лучше (по сравнению с циклом …

5
Почему инварианты важны в информатике
Я понимаю «инвариант» в его буквальном смысле. Я также узнаю их, когда набираю код. Но я не думаю, что понимаю значение этого термина в контексте информатики. Всякий раз, когда я читаю разговоры \ официальные документы о языковом дизайне от известных программистов \ компьютерных ученых, термин «инвариант» появляется как жаргон; и …

1
Инварианты времени жизни объекта и семантика перемещения
Когда я давно изучал C ++, мне было настоятельно подчеркнуто, что отчасти C ++ состоит в том, что, как и у циклов, есть «инварианты цикла», у классов также есть инварианты, связанные с временем жизни объекта - вещи, которые должны быть истинными. пока объект жив. Вещи, которые должны быть установлены конструкторами …

3
Каков ответ функционального программирования на основанные на типе инварианты?
Я знаю, что концепция инвариантов существует в нескольких парадигмах программирования. Например, инварианты цикла актуальны в ОО, функциональном и процедурном программировании. Однако, один очень полезный вид, найденный в ООП, является инвариантом данных определенного типа. Это то, что я называю «инвариантами на основе типов» в заголовке. Например, Fractionтип может иметь numeratorи denominatorс …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.