Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизМожет кто-нибудь знает что происходит Найти похожие ветки
← →
paxpet (2010-04-14 10:29) [0]с моим Delphi 2010 (или может это я уже сам трёхнулся от перенапряжения, или что-то нажал и теперь не пойму что)?
До поры до времени всё было хорошо. Методично и благополучно осваивал Делфи.
И вдруг во время отладки замечаю, что отладчик (при нажатии F8) игнорирует переменные типа integer и byte. То есть просто перескакивает эти строки и когда ставишь на этих строках точку входа для отладчика, то он считает её ошибочной. При этом всё остальное он видит (в том числе и строковые переменные). Я пытался найти причину в настройках, но ничего не нашёл. Тогда переустановил Делфи с подчисткой в реестре и в файлах. И опять не помогло. Я уже думаю, может так и должно быть? Но ведь помню, что ещё пару дней назад такой гадости не было! А-а, друзья мои! Помогите не попасть в дурдом с нервным растройством. Только не надо критиковать, а то у меня итак плохое настроение...
← →
И. Павел © (2010-04-14 10:40) [1]Может быть код оптимизирует?
← →
paxpet (2010-04-14 10:47) [2]Павлу!
А как такую оптимизацию отключить?
← →
И. Павел © (2010-04-14 10:51) [3]Где-то в свойствах проекта. В Delphi7 это compiler->code generation->optimization.
← →
И. Павел © (2010-04-14 10:54) [4]Еще можно добавить в начале отлаживаемого файла:
{$OPTIMIZATION OFF}
← →
Amoeba_ (2010-04-14 11:22) [5]
> {$OPTIMIZATION OFF}
То же самое, но короче:
{$O-}
← →
tesseract © (2010-04-14 12:13) [6]
> А-а, друзья мои! Помогите не попасть в дурдом с нервным
> растройством.
А ты уверен, что эти переменные в коде используются? Оптимизатор их выкинул и всё. Например, если как счетчики используются.
← →
Дмитрий Белькевич (2010-04-14 12:21) [7]Блоки "with" не встречаются по коду случайно?
← →
Плохиш © (2010-04-14 12:24) [8]... и начали расчехлять телепаторы ...
← →
Anatoly Podgoretsky © (2010-04-14 12:30) [9]> tesseract (14.04.2010 12:13:06) [6]
Действительно, не все ли равно, если программа правильно работает.
← →
brother © (2010-04-14 13:03) [10]> когда ставишь на этих строках точку входа для отладчика,
> то он считает её ошибочной
или игнорируемой?
← →
Дмитрий Белькевич (2010-04-14 15:32) [11]
> То есть просто перескакивает эти строки и когда ставишь
> на этих строках точку входа для отладчика, то он считает
> её ошибочной
Увидел. Не with. Телепатор не сработал :) Скорее всего оптимизация.
← →
paxpet (2010-04-14 17:18) [12]Всем посочувствовавшим большое спасибо!
Да, тут что-то с оптимизацией!
Ну я уже свой проект отложил и просто в качестве теста делал элементарные вещи: объявлял в кнопке 2-3 переменные и в её блоке (Begin-End) просто присваивал им значения.
По вашему совету я в начале модуля поставил {$O-}.... И всё заработало! Когда убрал эту функцию, опять начились пропуски переменных.
Но ведь раньше {$O-} я не применял и всё работало без проблем!
Я попробовал по вашему совету отключить оптимизацию в настройках.
То есть нажал ПКМ на проект. Затем Options>Compilling>Optimization= false.
Но это не действует!
Что же мне теперь каждый раз вручную вводить {$O-}.
Согласитесь, это как-то странно?
← →
Германн © (2010-04-14 17:29) [13]
> Согласитесь, это как-то странно?
>
Не соглашусь. Если переменную удаляет оптимизатор, значит переменная для работы алгоритма не нужна.
← →
paxpet (2010-04-14 17:41) [14]Видимо вы правы.
Пора мне пойти расслабиться.
Иногда полезно делать перерывы.
Спасибо за ваши советы. Они мне очень помогли.
← →
AlexDan © (2010-04-16 03:04) [15]> paxpet (14.04.10 17:18) [12]
> Но это не действует!
> Что же мне теперь каждый раз вручную вводить {$O-}.
> Согласитесь, это как-то странно?
однозначно дело в программе.. или обьявлнные переменные не используются, или неправильно построенные блоки (наверняка информация о переменных будет выводится в отладке, но компилироваться будет без проблем).. такая маячня обычно происходит при использовании глобальных переменных. такие вещи хорошо в D7 видны, в D10 действительно сложно увидеть/понять что-то)..
← →
AlexDan © (2010-04-16 03:34) [16]Даже точнее могу сказать - переменная описна, используется в расчетах но потом не прибавляется отнимается к какому либо дальнейшему результату и никуда не выводится /печать,эдит и т.п./ соответственно компиллятором отсекается и игнорируется.. можно было делфи не мучать..).
← →
Германн © (2010-04-16 04:53) [17]Удалено модератором
← →
Лукошко (2010-04-16 11:23) [18]Удалено модератором
← →
MonoLife © (2010-04-16 17:16) [19]
> AlexDan © (16.04.10 03:34) [16]
или где-то используется break, exit..
← →
Кто б сомневался © (2010-04-17 17:36) [20]Скинь код на котором оптимизирует компилятор. Ты что-то там намудрил. Все дело в тебе.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.122 c