![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
вот к примеру объявил тип
Код:
type
PAI = record
pos: integer;
index: integer;
end;Код:
function timer(nomer: PAI): string; могу ли я как то вызвать не объявляя в том месте переменную PAI Код:
var n:PAI; begin n.pos:=1; timer(n); Код:
timer((1,0)) |
|
#2
|
|||
|
|||
|
PHP код:
PHP код:
|
|
#3
|
||||
|
||||
|
ну собственно так тоже можно..
значит ничего для этого нету в Delphi ? |
|
#4
|
|||
|
|||
|
Вы же явно указываете тип параметра. Зададите другой тип - вылетит "Неверный формат данных". А в данном случае еще и неверное количество переменных.
Так что самый простой вариант - создать функцию, как указал выше Pyro. |
|
#5
|
|||
|
|||
|
Явно такого нет. Но можно сделать чуть побольше кода в одном месте, что бы в остальных писать поменьше. Например так сделан TRect.
И тапы по-дельфийски надо называть в буквы T. Код:
type
TAI = record
pos: integer;
index: integer;
end;
function AI(Pos:Integer; Index:Integer):TAI;// добавляем вот такую функцию
...
implementation
function AI( Pos:Integer; Index:Integer):TAI;
begin // а здесь реализация
Result.pos := Pos;
Result.index:=Index;
end;ну и потом Код:
timer(AI(1,0)) |
|
#6
|
||||
|
||||
|
Цитата:
Код:
type
PAI = ^TAI;
TAI = record
pos: Integer;
index: Integer;
end;
function timer(val: TAI): String;
begin
Result:=IntToStr(val.pos)+':'+IntToStr(val.index);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Caption:=timer(PAI(PChar(#64#8#0#0+#220+#7#0#0))^);
// 2112:2012
// 2112 = 840h = 8h, 40h = 0, 0, 8, 64
// 2012 = 7DCh = 7h, DCh, 0, 0, 7, 220
end;![]() |