Delphi 结构定义
Delphi structure definition
我在 Delphi 中看到了这个结构定义。我对 Delphi 很陌生。我正在通过我的 Delphi 尝试从下面的这段代码中找出头或尾。我似乎无法弄清楚这到底是什么意思。如果有人能解释一下就好了。
// MSG
TPayloadHdr = packed record
Count: byte;
end;
PPayload = ^Payload;
Payload = packed record
Hdr: TPayloadHdr;
TagLen: packed array[0..MAXINT div (2*sizeof(word))] of word;
// Data: array[0..] of byte; Use @TagLen[Hdr.Count] to get a pointer to the first structure.
function GetSize: integer;
end;
我的问题
为什么有两个end
没有begin
^Payload
是什么意思?
record
是关键字吗?这是什么意思?
The syntax for defining a record 包含 end
而没有 begin
。
如果Something
是一个类型,那么^Something
也是一个类型,即pointer到Something
.
record
是用来定义record types的关键字。
我在 Delphi 中看到了这个结构定义。我对 Delphi 很陌生。我正在通过我的 Delphi 尝试从下面的这段代码中找出头或尾。我似乎无法弄清楚这到底是什么意思。如果有人能解释一下就好了。
// MSG
TPayloadHdr = packed record
Count: byte;
end;
PPayload = ^Payload;
Payload = packed record
Hdr: TPayloadHdr;
TagLen: packed array[0..MAXINT div (2*sizeof(word))] of word;
// Data: array[0..] of byte; Use @TagLen[Hdr.Count] to get a pointer to the first structure.
function GetSize: integer;
end;
我的问题
为什么有两个
end
没有begin
^Payload
是什么意思?record
是关键字吗?这是什么意思?
The syntax for defining a record 包含
end
而没有begin
。如果
Something
是一个类型,那么^Something
也是一个类型,即pointer到Something
.record
是用来定义record types的关键字。