Сегодня пол рабочего дня потратил на попытки понять, почему не обновляется изображение в окне.
При изменении параметров фона обновляется.
При изменении параметров шума обновляется.
При изменении параметров дефектов не обновляется.
Просмотрел и облазил всё. Даже поползал на коленках по пыльным исходникам COM-объекта. Всё везде нормально, а окно не обновляется хоть тресни. Уже подленькая мыслишка написать баг-репорт мелкомягким закралась, типа, глючит ваша VS.
А оказалось что просто вместо UpdateResult() написал на автомате UpdateData(). Глаз эту строчку проскакивал не цепляясь – ну апдейт и апдейт.
Последний раз подобное было когда во вложенном цикле опечатался с переменными-счётчиками, а функция вместо того чтобы вылетать с ошибкой просто стала выдавать загадочный результат, причину которого осознать было непросто. Помнится изрядно взмок, гоняя дебаггер.
Вроде ж не первый год работаю. И даже не пятый. В действительно сложных местах давно не залетаю. А вот такая мелкая херня с каждым разом всё больше мучений доставляет, редко да метко.
Здравствуйте, Sealcon190, Вы писали:
S>Сегодня пол рабочего дня потратил на попытки понять, почему не обновляется изображение в окне. S>Это старость так подкрадывается или что?
Не... Это просто говорит о том, что пока наши инструменты не очень совершенны.
Я тоже однажды два часа потратил в поиске элементарной описки: скобки забыл указать в одном выражении, в итоге цвет фона не менялся.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Ну тоже пожалуюсь.
Была в коде не инициализированная переменная. Далее вызывалась функция, которая её инициализировала. Но, при внимательном осмотре, оказалось, что не всегда.
В результате под дебагом работало всё отлично, а в релизе глюки возникали.
Здравствуйте, LaptevVV, Вы писали:
LVV>Не... Это просто говорит о том, что пока наши инструменты не очень совершенны.
А собственно как инструмент сможет понять что автор задумывал, чтоб как то помочь с исправлением опечатки?
LVV>Я тоже однажды два часа потратил в поиске элементарной описки: скобки забыл указать в одном выражении, в итоге цвет фона не менялся.
Какой инструмент помог бы тебе обнаружить что скобки не стоят там где ты хотел?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, Sashaka, Вы писали:
S>Здравствуйте, Sealcon190, Вы писали:
S>>Сегодня пол рабочего дня потратил на попытки понять, почему не обновляется изображение в окне.
S>Ну не пол дня но мои 5 копеек:
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, Sashaka, Вы писали:
S>> if (IsInit) // he-he S>> return true;
S>> if ( !IsInit() ) S>> return false; // WTF????
CC>Чорт. А я тупил что не так в строке с WTF
Здравствуйте, Sashaka, Вы писали:
S>Согласен, даже VS6 дает warning, но там в проекте куча ворнингов, которые до сих пор не устранены, ибо влом и нет времени (я понимаю это мой косяк =).
Мой подход: Treat warnings as errors
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, Sashaka, Вы писали:
S>>Согласен, даже VS6 дает warning, но там в проекте куча ворнингов, которые до сих пор не устранены, ибо влом и нет времени (я понимаю это мой косяк =). CC>Мой подход: Treat warnings as errors
+100, просто мопед (проект) не мой, надо добавить быстро фич и в путь =)
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, LaptevVV, Вы писали:
LVV>>Не... Это просто говорит о том, что пока наши инструменты не очень совершенны. CC>А собственно как инструмент сможет понять что автор задумывал, чтоб как то помочь с исправлением опечатки?
LVV>>Я тоже однажды два часа потратил в поиске элементарной описки: скобки забыл указать в одном выражении, в итоге цвет фона не менялся. CC>Какой инструмент помог бы тебе обнаружить что скобки не стоят там где ты хотел?
общая идея такова: не должно быть места тупым опечаткам. И, если в имени функции можно допустить опечатку, то во всяких синтаксических конструкциях должно быть все жестко.....
Здравствуйте, Sealcon190, Вы писали:
S>Сегодня пол рабочего дня потратил на попытки понять, почему не обновляется изображение в окне.
S>А оказалось что просто вместо UpdateResult() написал на автомате UpdateData(). Глаз эту строчку проскакивал не цепляясь – ну апдейт и апдейт.
бывает. У меня вот типичная ошибка — забыть приращение итератора, когда прохожусь по контейнеру. Стараюсь использовать for — там все жестко, трудно ошибиться. Но вот иногда применяю while и все. Первый запуск, естественно, — подвисон из-за забытого приращения
не реализован приличный FOREACH и все....
Здравствуйте, Sealcon190, Вы писали:
S>Сегодня пол рабочего дня потратил на попытки понять, почему не обновляется изображение в окне.
S>Глаз эту строчку проскакивал не цепляясь – ну апдейт и апдейт.
S>Это старость так подкрадывается или что?
Нет. Это называет невнимательность.
Однажды программист достигает уровня, когда код пишется легко и непружденно, и взгляд охватывает весь код целиком, со всеми его побочными эффектами.
И тогда единственной причиной ошибок остается невнимательность.