【发布时间】:2011-07-27 10:25:17
【问题描述】:
我有一个这样定义的结构:
const
MaxSignalRecords=255;
type
TSignalRecord=record
signal1 : integer;
signal2 : integer;
signal3 : integer;
signal4 : integer;
signal5 : integer;
signal6 : integer;
bsignal1 : Boolean;
bsignal2 : Boolean;
bsignal3 : Boolean;
bsignal4 : Boolean;
bsignal5 : Boolean;
bsignal6 : Boolean;
end;
TListSignals = Array[0..MaxSignalRecords-1] of TSignalRecord;
这种结构用于在这样的算法中进行数千次计算:
for i:=1 to 900000 do
begin
CleartheList(MyList);
DotheMath(MyList);
DotheChart(MyList);
end;
我正在寻找一种快速的方法来将我的 TListSignals 的值初始化为 0 和 false。
现在我正在使用这个:
procedure ClearListSignals(var ListSignals:TListSignals);
var
i :Integer;
begin
for i := 0 to MaxSignalRecords - 1 do
with ListSignals[i] do
begin
signal1 :=0;
signal2 :=0;
signal3 :=0;
signal4 :=0;
signal5 :=0;
signal6 :=0;
bsignal1 :=false;
bsignal2 :=false;
bsignal3 :=false;
bsignal4 :=false;
bsignal5 :=false;
bsignal6 :=false;
end;
end;
如何提高ClearListSignals 过程的性能?
【问题讨论】:
标签: delphi