#1383: Счастливой отладки!

« картинки и свежие анекдоты | чат

#1383: Счастливой отладки!

Однажды мне довелось «подхватывать» проект на C++, оставшийся от одного программиста, уволенного несправедливо (по его личному мнению). Впрочем, проект был почти завершён, и мне оставалось лишь немного дописать интерфейс, провести тестирование, отладку и сдать всё заказчику.

Как обычно, сроки поджимают, а я всё никак не могу разделаться с «ловлей блох»: приложение то работает нормально, то вдруг начинает глючить и вылетать на ровном месте. Как выяснилось, периодически возникало std::exception, но отследить, откуда оно бралось, у меня никак не получалось: казалось, что таинственная ошибка присутствует буквально всюду, при этом появляясь далеко не при каждом запуске.

Вечер пятницы. В понедельник начальство обещало спустить с меня шкуру, если что-то ещё не будет работать. Скидываю все исходники себе на флешку, хоть это и запрещено (к счастью, лишь на уровне инструкций), и несу домой в надежде разобраться, что к чему, за чашечкой кофе.

Дома первым делом в надежде на чудо запускаю экзешник — вылетает, сволочь. Ладно, запускаю полную компиляцию и иду чистить картошку. Возвращаюсь — ошибка!

В конце одного из основных хэдеров проекта, заботливо спрятанная за правый край экрана нужным количеством табуляторов, красуется неприметная строка:
#include <cfdc.h>

Гугление результата не даёт; просто комментирую эту строку и компилирую заново — успешно! Запускаю — программа работает как часы.

Придя в понедельник на работу, первым делом я решил глянуть, что же это за таинственная библиотека. Код её оказался настолько же лаконичным, насколько садистским:

#ifndef CFDC_H
#define CFDC_H

#include <cstdlib>
#include <exceptio.h>

#define return if (std::random(1000) < 2) throw std::exception(); else return

//Счастливой отладки!

#endif

Надо ли говорить, что наш проект использовал в одном незначительном месте стандартный генератор случайных чисел, а вызываемый при инициализации std::randomize() успешно заметал любые следы?..

Ещё интересное на этом сайте:

Анекдоты и картинки #53310
Анекдоты и картинки #53309
Анекдоты и картинки #53308
Анекдот дня по итогам голосования за 28 октября 2009
История дня по итогам голосования за 28 октября 2009
Афоризм дня по итогам голосования за 28 октября 2009
Анекдоты и картинки #53304
Анекдоты и картинки #53303
Анекдоты и картинки #53302
Анекдоты и картинки #53301
Анекдоты и картинки #53300
Подборка баянов
Анекдоты и картинки #53298
Анекдоты и картинки #53297
Фотожаба. "Детство должно быть счастливым" (79 фото)
Ужасы социальных сетей (33 фото)
Бесплатный магнит, значок и стикер каждому от Printdirect
Как Арнольд Шварценеггер говорит нет (2 картинки)
Звезды. Тогда и сейчас (46 фото)
Фотожаба. "Детство должно быть счастливым" (79 фото)
« все анекдоты и картинки
Рейтинг@Mail.ru