Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Vladimir Bormotov                    2:5020/400     07 Oct 2002  18:12:33
 To : Oleg Goodyckov
 Subject : Re: g++
 -------------------------------------------------------------------------------- 
 
 
    Hi, Oleg!
 
 >>>>> "OG" == Oleg Goodyckov <og@videoproject.kiev.ua> writes:
 
 >>  OG> Обрабатываем массив 1000х100 элементов.  Hа 876 строке в 56
 >>  OG> элементе программа слетает регулярно.  Обрабатывается изображение.
 >>  OG> То есть, все элементы, по идее, не могут приподнести сюрпризов -
 >>  OG> они все примерно одинаковы. Слет, следовательно, обусловлен чем-то
 >>  OG> другим.  Проще запустить программу в дебаггере, выйти на
 >>  OG> соотв. место в соотв.  момент и просмотреть все и вся. Быстрее.
 >>
 >>  можно подробнее, что именно попадает под "всё и вся"?
 
  OG>   Всей части, обрабатывающей данные в означенном месте. Там может быть
  OG>   достаточно сложная логика и много переменных. Писать все их в логи и
  OG>   потом анализировать, часто - дело куда более глупое и
  OG>   непродуктивное, чем раз заглянуть отладчиком и узнать, что какая-то
  OG>   переменная вовремя не отинициализирована.
 
  "неотинициализированая переменна" ловится грамотным assert'oм.
  
  
  OG>   Живой пример.  Словарь Slowo знаешь? 
  
  слышал, но никогда не пользовал.
  
  
  OG>   У меня он выпадал почему-то.  Исходники есть. Что - начинать
  OG>   нашпиговывать их местами вывода диагностики или все же прогнать с
  OG>   отладчиком и выяснить методом ловли льва в пустыне сбойное место и
  OG>   потом узнать, в чем дело?  
  
  если он падает, отбрасывает корку.  В том месте где падает - ставим для
  начала assert'ы, например.
  
  
  OG>   Возможно, я просто не так крут, как ты и потому пошел вторым путем.
  OG>   За десять минут нашел неинициализируемую переменную, внес
  OG>   исправления в исходники и отправил их автору.  И с ужасом
  OG>   представляю в данном случае, как бы я пошел путем протоколирования.
 
  в принципе я согласен, что если отладчик помогает решить проблему за 10
  минут (даже за тридцать) - то не нужно заморачиваться.  Hо нужно четко
  понимать, что 'давить на F8' нужно не до решения проблемы, а не более чем
  какое-то время. 
  
  Разумеется со всеми тонкими моментами, на которые обратили внимания в
  седеней ветке треда Alex и Netch, я согласен ;)
  
 >>  OG> Hо отладочный вывод, конечно же - вне конкуренции, обычно.
 >> 
 >>  еще раз, что отладчик покажет ТАКОГО, что нельзя записать в log?
 
  OG> Можно все. Только анализировать километры лога не всегда удобно. 
  
  grep? ;)
  
  OG> В особенности, когда не знаешь, чего искать.
 
  если не знаешь, то коенчно лучше начинать с assert'ов.  Я к чему все это
  начал.  Что УЗHАТЬ что искать, с помощью отладчика HЕ ПОРЩЕ.  Иногда, в
  простейших случаях, это удается узнать за 10-30 минут.  Да, иногда
  отладчик позволяет локализовать проблему.  Hо часто люди считают что он
  позволяет решать проблемы более эфективно.  Вот с этим я и несогласен ;)
  
 -- 
    Bor.
 --- ifmail v.2.15dev5
  * Origin: BorHomeLand (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: g++   Vladimir Bormotov   02 Oct 2002 20:48:12 
 Re: g++   Alex Tomas   02 Oct 2002 21:51:15 
 Re: g++   Vladimir Bormotov   02 Oct 2002 23:30:59 
 g++   Konstantin Osipov   15 Oct 2002 00:11:30 
 Re: g++   Vladimir Bormotov   15 Oct 2002 02:49:32 
 Re: g++   Victor Wagner   15 Oct 2002 11:26:04 
 g++   Konstantin Osipov   17 Oct 2002 00:55:21 
 Re: g++   Victor Wagner   17 Oct 2002 11:31:49 
 Re: g++   Aleksey Cheusov   17 Oct 2002 14:35:19 
 Re: g++   Vladimir Bormotov   17 Oct 2002 17:24:03 
 Re: g++   Artem Chuprina   17 Oct 2002 17:34:21 
 Re: g++   Vladimir Bormotov   17 Oct 2002 17:19:54 
 Re: g++   Valentin Nechayev   15 Oct 2002 21:40:24 
 g++   Konstantin Osipov   17 Oct 2002 01:05:43 
 Re: g++   Valentin Nechayev   17 Oct 2002 11:33:53 
 Re: g++   Valentin Nechayev   17 Oct 2002 21:52:29 
 Re: g++   Oleg Goodyckov   03 Oct 2002 17:59:47 
 Re: g++   Vladimir Bormotov   03 Oct 2002 18:30:29 
 Re: g++   Valentin Nechayev   03 Oct 2002 23:08:04 
 Re: g++   Vladimir Bormotov   04 Oct 2002 00:05:10 
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   04 Oct 2002 18:48:15 
 g++   Andrey Rudyavsky   21 Oct 2002 15:25:28 
 Re: g++   Valentin Nechayev   07 Oct 2002 18:18:53 
 Re: g++   Vladimir Bormotov   08 Oct 2002 00:04:55 
 Re: g++   Aleksey Cheusov   09 Oct 2002 16:12:39 
 Re: g++   Vladimir Bormotov   09 Oct 2002 22:15:20 
 g++   Svyatoslav Abramenkov   10 Oct 2002 19:13:25 
 Re: g++   Vladimir Bormotov   12 Oct 2002 12:55:31 
 Re: g++   Aleksey Cheusov   11 Oct 2002 10:37:29 
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   04 Oct 2002 18:46:51 
 Re: g++   Valentin Nechayev   07 Oct 2002 18:18:52 
 Re: g++   Eugene Karpachov   08 Oct 2002 01:52:35 
 Re: g++   Valentin Nechayev   08 Oct 2002 10:13:03 
 Re: g++   Vladimir Bormotov   07 Oct 2002 18:20:45 
 Re: g++   Oleg Goodyckov   04 Oct 2002 12:56:50 
 Re: g++   Vladimir Bormotov   07 Oct 2002 18:12:33 
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   04 Oct 2002 18:45:36 
Архивное /ru.linux/25413fefa55e.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional