delphi动态数组深度问题???

risingsoft 2006-06-29 02:19:22
TDynArray=array of integer;

procedure TForm1.BitBtn2Click(Sender: TObject);


var
fDynArray: TDynArray;
i:Integer;
lbErr:boolean;
begin
setLength(fDynArray,8);
for i := low(fDynArray) to high(fDynArray) do
begin
fDynArray[i] := i;
end;
ZeroMemory(@fDynArray[low(fDynArray)],High(fDynArray)+1); //POS1
//ZeroMemory(fDynArray,High(fDynArray)+1); //POS2

lbErr := false;
for i := low(fDynArray) to high(fDynArray) do
begin
if fDynArray[i]>0 then
begin
lbErr := true;
break;
end;
end;
if lbErr then
ShowMessage('Has data')
else
ShowMessage('Not has data');
end;

为什么无论用POS1或POS2方式都清0不了此一维动态数组?难道非要一个个用笨办法写值清0
...全文
399 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
risingsoft 2006-06-29
  • 打赏
  • 举报
回复
好啊。明天去公司看看效果。能行吗?
liangyong007a 2006-06-29
  • 打赏
  • 举报
回复
FillChar(@fDynArray[low(fDynArray)],(High(fDynArray)-Low(fDynArray) + 1)*SizeOf(Integer)), 0);
ysai 2006-06-29
  • 打赏
  • 举报
回复
ZeroMemory(@fDynArray[low(fDynArray)],(High(fDynArray)-Low(fDynArray) + 1)*SizeOf(Integer));
risingsoft 2006-06-29
  • 打赏
  • 举报
回复
NONO。。我没说清楚。

我这个例子是测试的。实际上我用的是一个全局的数组。在程序运行过程中一直存在。不能nil,也不能set为0,因为其他地方可能正在使用,我只是清0
liangyong007a 2006-06-29
  • 打赏
  • 举报
回复
setLength(fDynArray,0);
neatrain 2006-06-29
  • 打赏
  • 举报
回复
试试 fDynArray:=nil;
terence4444 2006-06-29
  • 打赏
  • 举报
回复
试试FreeAndNil()
内容概要:本文围绕Java环境配置在通信行业中的实际应用展开,重点阐述了如何通过标准化JDK版本、构建工具、容器化运行环境及配置管理,支撑话单处理、在线计费、5G网元等高并发、低延迟、强一致性的通信系统。文章以话单消费服务为例,深入剖析了Kafka消费者设计、JDBC批量插入、容器感知JVM参数配置、异常处理机制与可观测性集成等关键技术细节,强调Java环境配置在通信领域不仅是运行基础,更是保障系统稳定性与可维护性的工程规范。; 适合人群:具备Java开发基础,从事通信行业系统开发、运维或架构工作的1-5年经验研发人员;尤其适用于参与计费、网管、信令、风控等系统的工程师。; 使用场景及目标:①掌握通信级Java应用的环境标准化配置方法;②理解高吞吐话单处理服务的设计与调优要点;③构建可在多厂商、多机房环境下稳定运行的Java微服务;④实现与K8s、Prometheus、Kafka等云原生组件的深度集成。; 阅读建议:此文档强调工程实践,建议结合代码案例在真实环境中部署调试,重点关注JVM容器化参数、配置外部化、异常传播机制与监控接入方式,理解每一行配置背后的通信业务约束与可靠性考量。

16,741

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧