Главная страница
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.033 c
2-1165997990
Клара
2006-12-13 11:19
2006.12.31
Отчеты


3-1161057847
DelphiN!
2006-10-17 08:04
2006.12.31
Помогите написать SQL запрос ...


2-1166084082
Николай1
2006-12-14 11:14
2006.12.31
TApplicationEvents.onIdle не работает


4-1156328889
sem2001
2006-08-23 14:28
2006.12.31
Процессы


2-1165762818
addi
2006-12-10 18:00
2006.12.31
FloatToInt