Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2015, 20:03   #11
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Можно предположить что в другом месте на неё влияли не правильные действия с другой переменной, с массивом например, типа записи за пределы. Все равно это где-то проявится
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 10.04.2015, 20:28   #12
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от Turbine Посмотреть сообщение
Ситуация решилась абсолютно дурацким (антинаучным) способом - переставил из строчку temp_1 : tStringList; из одного места public в другое. И все начало фринилиться без исключений.
Ужас. Я балдею.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 10.04.2015, 20:43   #13
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
неинициализированная глобальная переменная наконец-то получила правильное значение (nil).
а могло быть по другому?
lomastr_ вне форума Ответить с цитированием
Старый 10.04.2015, 20:48   #14
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
повезло.

неинициализированная глобальная переменная наконец-то получила правильное значение (nil).
Она инициализировалась так...
Код:
temp_1 := tStringList.Create;   
temp_1.Clear;
Может по-другому надо инициализировать?

Не столько повезло. Сколько компилятор почему-то передумал .

Несколько раз замечал, что иногда полезно:
1. Перезагрузить IDE
2. Перенести переменную в другое место
3. Создать абсолютную копию процедуры под другим именем - иногда копия работает, а оригинал нет.

Последний раз редактировалось Turbine; 10.04.2015 в 20:51.
Turbine вне форума Ответить с цитированием
Старый 10.04.2015, 20:51   #15
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
что иногда полезно:
руки выпрямлять, а не на компилятор пинять

Цитата:
temp_1.Clear;
Может по-другому надо инициализировать?
коечно, надо 3 раза Clear тутже сделать. вдруг один раз не все удалит? а за 3 раза сто пудово

Последний раз редактировалось lomastr_; 10.04.2015 в 21:00.
lomastr_ вне форума Ответить с цитированием
Старый 10.04.2015, 21:21   #16
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
руки выпрямлять, а не на компилятор пинять

коечно, надо 3 раза Clear тутже сделать. вдруг один раз не все удалит? а за 3 раза сто пудово
Как только впаду в маразм буду делать Clear 3 раза.
А так, очистить список перед работой не тяжкий грех.
В программе есть еще десяток списков - все работают.
В данном случае ситуацию исправил именно переносом внутри секции Public...
Кроме моих непрямых рук - что "прямое" повлияло на такое исправление ситуации ПОДОБНЫМ ОБРАЗОМ?
Turbine вне форума Ответить с цитированием
Старый 10.04.2015, 21:27   #17
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
А так, очистить список перед работой не тяжкий грех.
тот-же маразм
Цитата:
Кроме моих непрямых рук - что "прямое" повлияло на такое исправление ситуации ПОДОБНЫМ ОБРАЗОМ?
кривых достаточно

кто знает что у вас там было и что сделали? ясно только то что что-то не правильно, остальное только по звездам
lomastr_ вне форума Ответить с цитированием
Старый 11.04.2015, 01:19   #18
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Больше всех подходит комментарий Smitt&Wesson: "Ужас. Я балдею."

И одна заметка про FreeAndNil, который помогает обнаруживать подобные проблемы:
Turbine вне форума Ответить с цитированием
Старый 11.04.2015, 04:04   #19
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

подобные это какие? загляните в исходники vcl и увидите что просто фри там дофига и больше и нет подобных, рассказать почему или догадались?
lomastr_ вне форума Ответить с цитированием
Старый 11.04.2015, 07:01   #20
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
подобные это какие? загляните в исходники vcl и увидите что просто фри там дофига и больше и нет подобных, рассказать почему или догадались?
рассказать, пожалуйста
Turbine вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подтверждения при выходе из программы Ayubkhon Общие вопросы Delphi 18 18.06.2013 00:53
Сохранение состояние Button - а при выходе из программы! JunioR_BK Помощь студентам 3 16.07.2012 20:46
Окно запроса при выходе из программы Shouldercannon Общие вопросы Delphi 9 10.07.2012 15:15
Ошибка при выходе из программы Warn Общие вопросы Delphi 3 07.11.2011 16:16
Зависание программы при выходе codermoder Работа с сетью в Delphi 6 18.12.2010 23:16