Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.09;
Скачать: CL | DM;

Вниз

СтрингЛист - аргумент функции   Найти похожие ветки 

 
smok_er   (2002-11-29 21:07) [0]

Уважаемые мастера!
Столкнулся с небольшой проблемой.
Суть в следующем. Есть некая функция а, получаяющая в качестве аргумента переменную типа TStringList.
В функции требуется определить имя этого стринглиста. Как только не пробовал - ничего не получается.
Может кто-нибудь знает решение...


 
TTCustomDelphiMaster ©   (2002-11-29 21:25) [1]

У TStringList нет такого свойства.


 
Song ©   (2002-11-29 23:10) [2]

"Имя стринглиста" существует только у Вас в тексте программы. При выполнении - это адрес в памяти.


 
Юрий Зотов ©   (2002-11-29 23:22) [3]

Вероятно, требуется пояснение "на пальцах"...

finction GetStringCount(List: TStringList): integer;
begin
Result := List.Count // List - это и есть "имя". Вот и все.
end;


 
smok_er   (2002-11-29 23:28) [4]

:(
Неужели нет способа определить какой именно стринглист выступает в качестве аргумента?

Хотя я уже знаю, как сделать немного по-другому но с одинаковым результатом. Передавать некое id стринглиста, а затем его анализировать.


 
Anatoly Podgoretsky ©   (2002-11-29 23:37) [5]

Аргумент сам и являтся этим идентификатором, лишних сущностей не требуется.


 
smok_er   (2002-11-29 23:55) [6]

ОК, огромнейшее спасибо всем ответившим!


 
Юрий Зотов ©   (2002-11-29 23:57) [7]

> какой именно стринглист выступает в качестве аргумента?

Тот, который пришел в функцию - тот и выступает. Вот примеры вызовов функции GetStringCount (см. выше). Предположим, у нас есть 2 стринглиста (List4 и List7), причем в List4 - 4 строки, а в List7 - 7 строк. Тогда:

GetStringCount(List4) - даст 4;
GetStringCount(List7) - даст 7/

Поймите, TStringList - это не компонент, а просто объект, у него нет никакого имени. Его как бы "именем" служит переменная. Скажем, если мы написали:

Vasja := TStringList.Create

то после этого Vasja - это и есть "имя" стринглиста. И вызов
GetStringCount(Vasja)
вернет количество строк в нем.


 
smok_er   (2002-11-30 00:58) [8]

Огромное спасибо!
Я все понял и уже все отлично работает!
Просто стормозил :(



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

Текущий архив: 2002.12.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
1-28100
stas_a
2002-11-28 13:09
2002.12.09
Компоненты во время работы


1-27976
Дельфятник.
2002-11-26 15:41
2002.12.09
Процедура/функция с переменным набором параметров.


14-28241
Ru
2002-11-18 10:23
2002.12.09
Парсинг


1-28118
KidMan
2002-11-28 16:18
2002.12.09
WinRAR


14-28238
Anatoly Podgoretsky
2002-11-18 00:26
2002.12.09
Именинники 18 ноября