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

Вниз

Записи   Найти похожие ветки 

 
webpauk   (2006-12-14 17:25) [0]

можно ли сравнивать 2 переменных типа record, или только через сравнение record1.value1 c record2.value1?


 
webpauk   (2006-12-14 17:29) [1]

type
 TmyRecord = record
    value1: Integer;
    value2: String;
    ...
  end;

var
  R1, R2: TmyRecord;

if R1<>R2 - ошибка


 
BiN ©   (2006-12-14 17:30) [2]

CompareMem


 
BiN ©   (2006-12-14 17:30) [3]

...только не со строками


 
Reindeer Moss Eater ©   (2006-12-14 17:31) [4]

заменить строки на короткие и СompareMem


 
webpauk   (2006-12-14 17:33) [5]

CompareMem(R1, R2, ?)


 
webpauk   (2006-12-14 17:39) [6]

разобралси
спсб


 
Reindeer Moss Eater ©   (2006-12-14 17:48) [7]

CompareMem(P1, P2: Pointer; Length: Integer)


 
Loginov Dmitry ©   (2006-12-14 23:50) [8]

Универсальный метод:

function RecordsIsEqual(const Rec1, Rec2: TmyRecord): Boolean;
begin
 Result := (Rec1.value1 = Rec2.value1) and (Rec1.value2 = Rec2.value2) и т.д.
end;


 
Anatoly Podgoretsky ©   (2006-12-14 23:54) [9]

> Loginov Dmitry  (14.12.2006 23:50:08)  [8]

Так все остальные методы в общем случае не работают, даже для простых данных. Поскольку выравнивание и грязные неиспользуемые байты. Вариант packed - частный случай.



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
15-1166046445
sat
2006-12-14 00:47
2006.12.31
задача нужны идеи


2-1165732358
intel
2006-12-10 09:32
2006.12.31
Вывод подсказки


15-1165261160
Loginov Dmitry
2006-12-04 22:39
2006.12.31
Достала одна прога


1-1163508605
Axis_of_Evil
2006-11-14 15:50
2006.12.31
TListBox: Items разной высоты


15-1165462355
Slider007
2006-12-07 06:32
2006.12.31
С днем рождения ! 7 декабря