Вниз
Скачать: CL | DM;

Как можно сравнить два объекта?   Найти похожие ветки 

 
Кевларвестов Семен   (2007-02-22 12:32) [0]

Добрый день! В TObjectList грузится некторые объекты (одинаковые)
Можно ли как то сделать проверку, чтобы туда не попадали одинаковые.
(С одинаковыми свойствами), собственно, что не проверять каждый из параметров.
Думал сработает TobjectList.IndexOf(SomeObject), но она постоянно выдает -1. Может можно взять какую-нить так хэш функцию от объекта или еще как то их "быстро" сравнить?


 
TUser ©   (2007-02-22 14:09) [1]

Можно быстро проверить все published свойства.


 
Ega23 ©   (2007-02-22 14:13) [2]

Проверить значение указателя не объект. Если они отличаются - значит объекты УЖЕ разные.


 
Kolan ©   (2007-02-22 14:20) [3]

> В TObjectList грузится некторые объекты (одинаковые)

В некоторых объектах реализовать процедуру
function IsSame(AObjectLikeMe: TSomeObbject): Boolean;
и проверять при добавлении с помощью неё...

А еще можно перекрыть оператор "="


 
Kolan ©   (2007-02-22 14:20) [4]

> А еще можно перекрыть оператор "="

Наверно :) Я не пробовал...


 
default ©   (2007-02-22 14:21) [5]

в .NET у базового класса Object определён метод Equals который в своеё базовой реализации сравнивает сначала ссылки ссылки не объекты, потом типы объектов, потом уже данные



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
6-1159627784
S K i N E R
2006-09-30 18:49
2007.03.18
Как узнать когда завешина передача файла через NMStrm?


15-1172048402
TCrash
2007-02-21 12:00
2007.03.18
PC tools и иже с ним


3-1166794185
Note
2006-12-22 16:29
2007.03.18
ODAC и COM


6-1159346956
DeadMeat
2006-09-27 12:49
2007.03.18
Indy 9 или Indy 10 ?


15-1172050398
DVM
2007-02-21 12:33
2007.03.18
Вопрос знатокам FreeBSD




   Наверх