Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Зачем нужен был в List.Assign параметр ListA, если он все равно затрется приListB<>nil 
:(
    Опции темы
Delphist
Дата 22.10.2008, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 2
Всего: 3



Скажите, пожалуйста, зачем нужен был параметр ListB, в методе TList.Assign
Объясняю на примере, если я делаю вот так:
Код

procedure TForm1.Button2Click(Sender: TObject);
var
  l, la, lb: TList;
begin

  l := TList.Create;

  la := TList.Create;
  la.Add(tform1.Create(self));
  la.Add(tform1.Create(self));

  lb := TList.Create;
  lb.Add(tform1.Create(self));

  l.Assign(la, laCopy, lb);
end;


то это то же самое, что:
Код

procedure TForm1.Button2Click(Sender: TObject);
var
  l, lb: TList;
begin

  l := TList.Create;

  lb := TList.Create;
  lb.Add(tform1.Create(self));

  l.Assign(lb);
end;


Помоему ребята из Borland'а в этот день были не много обкурены smile 

Это сообщение отредактировал(а) Delphist - 22.10.2008, 17:23


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Christoph
Дата 22.10.2008, 17:45 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 1
Всего: 11




Заменяет список la на lb, и операция между ними копирование.

Код

TList.Assign(ListA: TList; Operation: TListAssignOp = laCopy;             
             ListB: TList = nil);


Второй  и третий параметр по умолчанию, если не передать, будут laCopy, nil


--------------------
user posted image
PM MAIL ICQ   Вверх
MetalFan
Дата 22.10.2008, 17:49 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



Цитата(Delphist @  22.10.2008,  17:15 Найти цитируемый пост)
Помоему ребята из Borland'а в этот день были не много обкурены smile 

может стоит читать документацию?
Цитата
Call Assign to assign the elements of another list to this one. Assign combines the source list with this one using the logical operator specified by the AOperator parameter.
 
If the ListB parameter is specified (Delphi) or not NULL (C++), then Assign first replaces all the elements of this list with those in ListA, and then merges ListB into this list using the operator specified by AOperator.
 
If the ListB parameter is not specified (Delphi) or NULL (C++), then Assign merges ListA into this list using the operator specified by AOperator.

да, в твоем примере так и будет, но это частный непоказательный случай


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Delphist
  Дата 22.10.2008, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 2
Всего: 3



Цитата(Christoph @  22.10.2008,  18:45 Найти цитируемый пост)
Заменяет список la на lb, и операция между ними копирование.

Ни фига он не заменяет

Добавлено @ 18:10
Цитата(MetalFan @  22.10.2008,  18:49 Найти цитируемый пост)
может стоит читать документацию?

Так прочитал, а оказалось, что написано одно, а выполняется совсем другое, поэтому и обратился на форум.

P.S. Можешь сам проверить.

Это сообщение отредактировал(а) Delphist - 22.10.2008, 18:13


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Christoph
Дата 22.10.2008, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 1
Всего: 11



Как не заменяет? Вот что я читал...

Код

exists in Delphi that allows you to assign to a TList object the
> result of the operation
> 'ListA   AOperator  ListB'. This can be : copy, and, xor for example.



--------------------
user posted image
PM MAIL ICQ   Вверх
Delphist
Дата 22.10.2008, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 2
Всего: 3



Цитата(Christoph @  22.10.2008,  20:46 Найти цитируемый пост)
Как не заменяет? Вот что я читал...

Не веришь, проверь сам


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
MetalFan
Дата 22.10.2008, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 62
Всего: 128



Цитата(Delphist @  22.10.2008,  18:10 Найти цитируемый пост)
а оказалось, что написано одно, а выполняется совсем другое

чтото я не понял, что "другое"... все работает так, как написано в документации


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Delphist
Дата 22.10.2008, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 2
Всего: 3



Цитата(MetalFan @  22.10.2008,  23:00 Найти цитируемый пост)
чтото я не понял, что "другое"... все работает так, как написано в документации 

Ну как что, вот Christoph  утверждает, что список la будет заменен на lb


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Christoph
Дата 22.10.2008, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 1
Всего: 11



Нет...
'ListA   AOperator  ListB' и результат помещается в TList object ;) разве не так?


--------------------
user posted image
PM MAIL ICQ   Вверх
Delphist
Дата 22.10.2008, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphist Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2145
Регистрация: 3.2.2004
Где: всегда в сети

Репутация: 2
Всего: 3



Цитата(Christoph @  22.10.2008,  23:42 Найти цитируемый пост)
Нет...
'ListA   AOperator  ListB' и результат помещается в TList object ;) разве не так? 

попробуй сам убедишься или глянь исходник


--------------------
ProcessInfo 1-ая моя программа (аналог spyxx.exe с гораздо большим функц-ом - внедрение dll в адр. простр. процесса, перехват API-функций, разбор приложения на окна мн.др).
Когда-то давным-давно использовал это...
PM MAIL ICQ   Вверх
Christoph
Дата 22.10.2008, 23:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: 1
Всего: 11



Будет время попробую обязательно smile


--------------------
user posted image
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0510 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.