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

Вниз

Record - сравнивание записей   Найти похожие ветки 

 
igordth ©   (2009-07-30 17:01) [0]

При сравнивании записей выдает ошибку несовместимость типов:

...
var
 Art: array[1..500] of TArtist;
 ArtMem:TArtist;
 dat:file of TArtist;
...
for i:=1 to j do
while not Eof(dat) do begin
read(dat,ArtMem);
if Art[i]=ArtMem then          //тутачки ошибочка!!!
Break
else
...

возможно ли вообще такое сравнивание??


 
clickmaker ©   (2009-07-30 17:24) [1]

> возможно ли вообще такое сравнивание??

нет. см., например, EqualRect()


 
igordth ©   (2009-07-30 17:35) [2]

спасибо, хотел покороче написать


 
Юрий Зотов ©   (2009-07-30 20:00) [3]

Если записи упакованы и не содержат указателей, то "покороче написать" можно через CompareMem.


 
Anatoly Podgoretsky ©   (2009-07-31 13:15) [4]

Ты про то, что разные указатели могут указывать на одинаковые, но разные данные?


 
Юрий Зотов ©   (2009-07-31 15:12) [5]


> Anatoly Podgoretsky ©   (31.07.09 13:15) [4]

Угу. Точнее - у одинаковых по сути данных могут быть разные адреса.


 
Тимохов_   (2009-08-03 12:51) [6]

Не согласен с 3 в общем случае, даже если нет указателей.

Например вещественные типы могут иметь разное бинарное представление (comparemem даст "не равно"), но по сути иметь одинаковое значение с точностью до машинного епсилон.

В общем я за то, чтобы писать явное сравнение в любом случае, т.е. сделать сравнение (по правилам, применимым к сравниваемому типу) для каждого члена записи и объединить его AND.

Ну это я так, зужу.


 
Anatoly Podgoretsky ©   (2009-08-03 13:17) [7]

CompareMem может вызвать проблемы с .NET

Я тоже за поелементное сравнение, но в случае с float не явное, а относительное сравнение.



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
15-1291491996
bss
2010-12-04 22:46
2011.03.20
Инфомрация в выдаче яндекса


11-1221147667
zangk2k
2008-09-11 19:41
2011.03.20
Exptlntf.dcu


15-1291724614
Омлет
2010-12-07 15:23
2011.03.20
Что будет, когда закончатся IPv4-адреса?


1-1249031018
Scyth
2009-07-31 13:03
2011.03.20
Отображения объектов DLL по ссылкам


2-1293424349
Curse
2010-12-27 07:32
2011.03.20
Растолкуйте пожалуйста безъязыкому