![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Никак не могу найти информацию о том, как инициализировать переменную типа массива из records пользовательского типа. А это вообще можно делать? Знаю, что массивы можно инициализировать, если они const. А record можно инициализировать? И если да, то какой там будет синтаксис?
У меня есть свой MyRec = record (int,int, int, string). Определяю array of MyRec и хочу сразу его инициализировать(он не будет меняться в процессе работы программы, поэтому логично сделать его const). Прошу помощи у опытных товарисчей!!! |
|
#2
|
||||
|
||||
|
Ну инициализировать дин. массив можно функцией SetLength(mas, len);
А если это константы, то можно делать как-то так: Код:
type
x=record
y,a,b: integer;
end;
const
myX: x = (y: 5; a: 6; b:7); |
|
#3
|
||||
|
||||
|
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
lost = record
id: Integer;
nick: String;
end;
TForm1 = class(TForm)
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
alost: array [0..1] of lost = ((id: 1; nick: 'JACK'), (id: 2; nick: 'LOCK'));
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Lines.Add(IntToStr(alost[0].id));
Memo1.Lines.Add(alost[0].nick);
Memo1.Lines.Add(IntToStr(alost[1].id));
Memo1.Lines.Add(alost[1].nick);
end;
end. |