Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2003.07.07;
Скачать: [xml.tar.bz2];

Вниз

Просмотр значений строк списка при отладке   Найти похожие ветки 

 
2Nat   (2002-10-28 17:34) [0]

При отладке программы не получается посмотреть значения строк списка PStrList. Обычно при наведении курсора на элемент программы можно увидеть его значение или в WatchList посмотреть. Здесь же количество строк в любом списке что-то типа 4204748, а значение SL.Items[i] = "Access violation at ... accessing FFFFFFFF". Значения простых переменных видны.
Что сделать? Программа слишком большая, а ошибки лучше поймать сразу. Нет больше сил выводить значения через ShowMessage.
Заранее спасибо.


 
SPeller   (2002-10-28 17:56) [1]

Просто тебе показывают значения указателей. Используй запись вида Variable^ для доступа именно к значению, а не адресу, по которому это значение расположено.


 
SPeller   (2002-10-28 17:57) [2]

ЗЫ: И курсор наводи на крышечку ^


 
2Nat   (2002-10-28 18:36) [3]

Не получается :(
В WatchList пишу SL.Count^ (или (SL.Count)^) - результат "Pointer type required". В данный момент список точно существует и и содержит строки.


 
SPeller   (2002-10-28 18:54) [4]

А если так: SL^.Count; ? У тебя же SL - указатель на объект-список строк. И потом наводишь мышу на крышку и получаешь то что тебе надо.


> SL.Count^

:-))


 
2Nat   (2002-10-28 19:24) [5]

:)))
Для SL^.Count и наведении чего надо на крышечку видим в скобках список параметров списка, среди них fCount - похоже на количество.
Как посмотреть сами строки. Там в перечне свойств виднелся указатель ...,fList:$XXXXX, ... Может это оно, как его смотреть.
Извиняюсь, если отвлекаю от чего-нибудь более высокого.




 
SPeller   (2002-10-29 01:02) [6]

А если воспользоваться окнами Evaluate/Modify или Watches ? Эффект тот же? По-моему они дожны помочь тебе сполна.


 
2Nat   (2002-10-29 14:13) [7]

В Evaluate/Modify, если в качестве значения набрать SL^ и нажать Inspect, то на вкладке Properties появившейся панельки среди прочих свойств увидим Count (то что надо)и Items. Если выделить Items, то даже можно увидеть его адрес. Но быстро в режиме отладки строки из Items посмотреть не получается.
Понимаю, что ворос из области "KOL" перешел в область "программирование для чайников", но все же... Буду очень признательна за помощь :)
Всяческие махинации с перестановками значка адресной операции не помагают. Help


 
SPeller   (2002-10-29 16:25) [8]

У меня счас нет времени смотреть исходники, уравками так вылезаю в этот форум. Поэтому если тебе показывают адрес чего-либо, то после имени переменной надо поставить крышечку эту незамысловатую, чтобы тебе показали значение.


 
Vladimir Kladov   (2002-11-02 07:53) [9]


> В Evaluate/Modify, если в качестве значения набрать SL^
> и нажать Inspect, то на вкладке Properties появившейся панельки
> среди прочих свойств увидим Count (то что надо)и Items.
> Если выделить Items, то даже можно увидеть его адрес. Но
> быстро в режиме отладки строки из Items посмотреть не получается.
>


Увы, приходится смотреть FCount, FItems[ I ] и т.д. Инспектор
отладчика не понимает свойства в objects по-нормальному. Хорошо хоть, компилится корректно.

Если часто в одном месте приходится смотреть много разных полей, но не хочется много вбивать в Watcher, могу предложить такое:
{$IFDEF DEBUG}
var TmpCount: integer; TmpValue: string;
{$ENDIF}
...
{$IFDEF DEBUG}
TmpCount := MyList.Count;
TmpValue := MyList.Items[ I ];
{$ENDIF}

останавливаемся и смотрим TmpXXX.

Вообще, при хорошем программировании такие фокусы обычно не нужны - все и так работает :)


> SPeller © (29.10.02 16:25)
> У меня счас нет времени смотреть исходники, уравками так
> вылезаю в этот форум. Поэтому если тебе показывают адрес
> чего-либо, то после имени переменной надо поставить крышечку
> эту незамысловатую, чтобы тебе показали значение.

Крышечка - это чтобы посмотреть, на что указывает указатель. Если
нужно конкретное поле, крышечка особо не нужна, delphi и так поймет. Единственное место, когда крышечка необходима по синтаксису - это в
with:

with MyObj^ do ...

но я уже год стараюсь избегать with. Очень мешает при отладке. Как раз не дает посмотреть значение поля наведением мыши. И мешает понимать код. Особенно, при вложенных with.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2003.07.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
14-20241
Домарощинер
2003-06-19 17:11
2003.07.07
Market


14-20249
panov
2003-05-30 17:00
2003.07.07
Может, сгодится на что...


9-19943
MRB_SPB
2003-01-23 11:49
2003.07.07
Скачал себе CG от NVIDA


11-20022
Delphi_n
2002-10-30 07:36
2003.07.07
<b>Chart в KOL</b>


14-20196
Gorlum
2003-06-20 17:10
2003.07.07
Вопрос по .CAB





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский