Delphi XE7 审核错误 'Array index is out of range'
Delphi XE7 Audit Error 'Array index is out of range'
Delphi XE7 Audit 向我显示错误 'Array index is out of range' 此处:
for i := 0 to High(Hazards) do begin
if Hazards[i].Ident = 123 then begin
HazardId := i;
Break;
end;
end;
有什么问题?
Hazards 是一个动态数组
假设i
是有符号类型,Hazards
是动态数组,那么代码是正确的,审计是错误的。数组具有 low()
到 high()
的范围,对于动态数组,前者始终为零。
如果我的假设是正确的,那么您应该提交错误报告。我不准备完全肯定地声明错误,因为您没有展示完整的复制品。
Delphi XE7 Audit 向我显示错误 'Array index is out of range' 此处:
for i := 0 to High(Hazards) do begin
if Hazards[i].Ident = 123 then begin
HazardId := i;
Break;
end;
end;
有什么问题?
Hazards 是一个动态数组
假设i
是有符号类型,Hazards
是动态数组,那么代码是正确的,审计是错误的。数组具有 low()
到 high()
的范围,对于动态数组,前者始终为零。
如果我的假设是正确的,那么您应该提交错误报告。我不准备完全肯定地声明错误,因为您没有展示完整的复制品。