业务耗时及数组

01.关于业务系统耗时信息的处理

    A: 常规处理方法:业务开始前取时间点,业务处理完成后取时间点,然后通过二个业务时间点的时间差来获取

    B: 优化处理方法:其实D中本来就提供了相关的业务功能供我们使用,只是我们一直不知道而已   

        a. 定义一个结构对象: sw:TStopWatch;   ==> 引用 System.Diagnostics.pas   

        b. 直接开始记录: sw :=TStopWatch.StartNew;   

        c. 结束时:sw.Stop;    d. 取时差: sw.ElapsedMilliseconds; //微秒数   

        ----------------------------------------------   

         TStopWatch:这是一个会持续监控从Start(或StartNew)被下达之后所耗费的时间(或者系统CPU的周期),               

                             呼叫Stop后,监控就会停止;

02.关于动态数组指针账值与值赋值的问题  

     A.假定有一个数据 AryA: array of integer;  

     B. 若新定义一个数组 AryB := AryA;     

         AryA,AryB二个变量,指向的是同一个内在地址,任何一个对数组做值的处理,都将影响另外一个;  

     C. 若新定义一个数组 AryC := Copy(AryA,Low(AryA),Length(AryA));     

         此时AryA,AryC是二份不同的数组,Copy动作是将AryA的值的内容,复制了一份组AryC,     

         AryA,AryC指向不同的内存地址;  

     D.数组的遍历     

        a. for i:= Low(Array) to High(Array) do   --指定数组边界进行循环处理     

        b. for XX in Array do                    

        --直接使用 in 进行遍历,从 D2007之后才开始  

      E.数组的新的计算方法     

        Insert(要插入的新的数组内容,被插入的目标数组,插入位置索引值)     

        Delete(要删除成中的组组,删除起始索引位置,删除数量)  

     F.做为开放数组函数或过程的一个参数进行处理     

        Slice(数组,数量)  --从数组第一个内容开始的指定数量部分做为子数组对象,传递出去

原文地址:https://www.cnblogs.com/jieling/p/5867459.html