For in в Delphi
Мало кто знает (и еще меньше, кто использует) о такой замечательной конструкции в Delphi (начиная с Delphi 2005), как for..in.
А зря. Вот простой пример. Как можно перебрать значения в TStringList. Например так:
procedure DoStringList(AList: TStringList);
var
Idx: Integer;
begin
for Idx := 0 to High(AList) do
ShowMessage(AList[Idx]);
end;
Не сложно, но можно проще
:
procedure DoStringListNew(AList: TStringList);
var
lStr: string;
begin
for lStr in AList do
ShowMessage(lStr);
end;
Правда ведь, намного приятнее и понятнее.
Вот еще пара примеров:
var
lStr: string;
lCh: Char;
lCount: Integer;
begin
lStr := 'Delphist.ru - заходите в гости';
lCount := 0;
for lCh in lStr do
if lCh = ' ' then Inc(lCount);
ShowMessage('Количество пробелов: ' + IntToStr(lCount));
end;
А вот, например, перебор компонентов:
var
lComp: TComponent;
lStr: string;
begin
lStr := '';
for lComp in Self do
begin
if lStr <> '' then
lStr := lStr + sLineBreak;
lStr := lStr + lComp.Name;
end;
ShowMessage(lStr);
end;
Так что, изучайте, ищите новые возможности в новых версиях и ваш код будет намного проще и понятнее.
П.С. В поисках халявы в Интернете? Заходите на форум posulka.com - здесь представленная лучшая вещевая халява в Сети! Куртки, рюкзаки, футболки, флэшки, диски, ручки - все это Вы можете заказать на нашем форуме абсолютно бесплатно. Халява есть халява!!!
+0