我在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
是关键字吗?这是什么意思?
答案 0 :(得分:3)
The syntax for defining a record包含end
,但没有begin
。
如果Something
是一种类型,那么^Something
也是一种类型,即pointer到Something
。
record
是用于定义record types的关键字。