我想知道是否有办法制作一个有多种数据字段的数组。
到目前为止,我使用的是aMyArray: array of array [0..1] of TPoint;
但现在,这对我来说还不够。我需要在现有的2“Point”元素中添加3个元素,使其成为像aMyArray: array of (TPoint,TPoint,real,real,real)
因此aMyArray的每个元素都有5个'子元素',其中2个是TPoint类型,其中3个是'真实'类型。
这可能以某种方式实现吗?
答案 0 :(得分:12)
也许像
这样的记录TMyType = record
Points: array[0..1] of TPoint;
Floats: array[0..2] of Real;
end;
或
TMyType = record
Point0: TPoint;
Point1: TPoint;
Float0: Real;
Float1: Real;
Float2: Real;
end;
适合你。
答案 1 :(得分:0)
您可以使用Variants数组在每个元素中存储不同的数据。但阵列设计用于存储同质数据。如果您的数据存储要求更复杂,请开始寻找不同的容器。
答案 2 :(得分:0)
我会使用带有AddObject的TStringList或decendant。
答案 3 :(得分:0)
您可能还想使用变体记录。例如see this