Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

try except и присвоение значения переменной [D6, WinXP]


Pavelkq ©   (2006-09-19 12:19:00) 

Имею такой код (или он меня):
Procedure StringToKeys (DocKeys: string);
var
PStr: string;
begin
  try
    PStr := DocKeys;
  except
    Form1.Memo1.Lines.Add(PStr);
  end;
end;

До входа в tryпеременная DocKeysимеет переданное значение. Во время входа значение переменной исчезает и попытка присовить это значение переменной PStrоканчивается неудачей. После этого процедура, естественно завершается. Если сделать:
Procedure StringToKeys (DocKeys: string);
var
PStr: string;
begin
    PStr := DocKeys;
    Form1.Memo1.Lines.Add(PStr);
end;

, то все работает на ура. В чем проблема?


Pavelkq   (2006-09-19 12:36:00) [1]

Спасибо! Все работает! Проблема ясна!


Dmitrij_K   (2006-09-19 12:24:00) [2]

Включена оптимизация. Бесполезный код удаляется
begin
 try
   PStr := DocKeys;
   shwomessage(PStr); //***
   shwomessage(DocKeys);//***
 except
   Form1.Memo1.Lines.Add(PStr);
 end;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо