读书人

请教Delphi中的record结构体能嵌套么

发布时间: 2012-02-07 17:45:36 作者: rapoo

请问Delphi中的record结构体能嵌套么?
初次接触delphi
请问 record结构体能嵌套使用么?
例如:
A = record
name:string;
end;

B = record
firend: array[0..10] of A
end;

问题:
1. B可以这样声明不?
2. 应该如何完成B结构的初始化,我用SetLength(B,0)编译无法通过
3. 如果以上不可以,请问如何在delphi中实现结构体中嵌套另外一个结构体的数组,如能回复非常感谢


[解决办法]

Delphi(Pascal) code
type  PPersonName = ^TPersonName;  TPersonName = record    Name: string;  end;  PPersonArr = ^TPersonArr;  TPersonArr = record    arr: array[0..10] of PPersonName;  end;var  A: PPersonName;  B: PPersonArr;  I: Integer;begin  New(B);  {申请PPersonArr内存}  for I := 0 to 10 do  begin    New(A); {申请PPersonName内存}    A.Name := 'A' + IntToStr(I);    B.arr[I] := A  end;  for I := 0 to High(B.arr) do      {使用}    ShowMessage(B.arr[I].Name);  for I := High(B.arr) downto 0 do    Dispose(b.arr[I]);  {释放PPersonName内存}  Dispose(B); {释放PPersonArr内存}end; 

读书人网 >.NET

热点推荐