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

Как передать запись (TMyRecord) в процедуру...   Найти похожие ветки 

 
noviceman   (2008-05-13 07:28) [0]

В классе есть процедура типа
procedure SetSomeParam(SomePar: TMyRecord);

Вопрос в том, как передать в нее эти параметры. Делал так (и это работает :-)):


...
var
 SomeObject: TSomeClass;
...
procedure SetParFor;
var
 MyRecord: TMyRecord
begin
 MyRecord.First := 1;
 MyRecord.Second := 255;
 SomeObject.SetSomeParam(MyRecord);
end;


Как не делать предварительного описания переменной TMyRecord, как сразу в вызове процедуры описать значения параметров?
Типа:
SomeObject.SetSomeParam(...);

Заранее благодарю...


 
Loginov Dmitry ©   (2008-05-13 07:58) [1]

> как сразу в вызове процедуры описать значения параметров?
>


При вызове процедуры можно передавать более одного параметра. Передавай не TMyRecord, а ее поля.

Еще можещь разработать дополнительную функцию, принимающую поля записи, и возвращающую собранную запись, например:


function BuildMyRecord(AFirst: Integer = 1; ASecond: Integer = 255): TMyRecord;
begin
 with Result do
 begin
   First := AFirst;
   Second := ASecond;
 end;
end;


и оформить вызов так: SomeObject.SetSomeParam(BuildMyRecord());

Короче, вариантов масса...


 
noviceman ©   (2008-05-13 08:10) [2]

Варианты все через дополнительную процедуру (функцию)? Тогда менять ничего не буду.
Спасибо за ответ.



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

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



Память: 0.45 MB
Время: 0.011 c
15-1208648573
TIF
2008-04-20 03:42
2008.06.01
Переустановить IE7 в Vista. КАК?


2-1210568504
Nikfel
2008-05-12 09:01
2008.06.01
Поворот изображения на угол.


15-1208171268
Kolan
2008-04-14 15:07
2008.06.01
Выложил программку для генерации скриптов MS SQL


15-1208867243
i
2008-04-22 16:27
2008.06.01
Скорость билда проекта


15-1208335827
brother
2008-04-16 12:50
2008.06.01
Пэйджеры




   Наверх